通过Azure访问GPT
中国大陆地区不允许访问GPT服务,可以通过微软云搭建GPT服务。
*微软云首次注册有30天免费体验
https://azure.microsoft.com/zh-cn/pricing/purchase-options/azure-account/
创建OpenAI服务
选择部署模型
获取环境变量
设置到系统配置文件中,也可以在代码中import
代码详解
- temperature:针对回答的稳定性设置,0为最稳定
- max_token:设置回答的长度
Token计费规则
模型请求配额
使用DeepSeekAPI
可以使用DeepSeek的API作为代替
首次注册可以获得免费额度
示例源代码
https://github.com/KaloSora/HelloGPT/blob/main/code/gpt_api_example.ipynb
提示词工程
大模型返回的自然语言无法被程序使用。
让大模型结合到程序中,让程序能理解大模型返回的结果。
提示词技巧
- 利用反向提示词(如:不使用……)
- 规范输出的格式(如指定Json格式,便于程序处理)
- 文本规范异常输出的格式(如遇到异常时,返回简单的ERROR,便于程序处理)
- 不断迭代提示词
- 提示词尽量使用英语
DeepSeek官方提示库
示例源代码
https://github.com/KaloSora/HelloGPT/blob/dev/code/gpt_prompt_demo.ipynb
LangChain
大语言模型中的拓展工具类库,作为大语言模型和应用程序之间的桥梁。
LangChain is a flexible abstractions and extensive toolkit enables developers to harness the power of LLMs.
安装方式
1 | pip install langchain |
功能
提示词模板
不同程度的上下文记忆
大模型调用API
- 这种查询方式类似于爬虫,可能会被外部网站阻止,建议使用网站提供的API
链式请求
- 将复杂的任务分解为更简单的子任务
-
示例源代码
https://github.com/KaloSora/HelloGPT/blob/dev/code/langchain_demo.ipynb
保持会话状态
LLM模型本身的对话是无状态的。
使用Gradio类库让Chatbot获得记忆,能够根据上下文回答问题。
- 能够快速构建原型
- 能够保存上下文对话信息
安装
1 | pip install gradio |
可以使用LangChain的记忆功能,让开发更加简单
可以尝试不同程度的记忆功能
例如:ConversationSummaryBufferMemory
当缓存内容Token超过参数 “max_token_limit” 的值后,就会将超出的会话内容进行总结,这个总结过程也是通过大模型完成的。
使用记忆功能的模型:
优点
- 控制了缓存内容的大小
- 尽量记忆对话的上下文
缺点
- 在缓存内容超出限制后,为了控制缓存的大小,会持续通过大模型来总结较早的内容,使程序相应的延迟增加
- 成本增加
示例源代码
https://github.com/KaloSora/HelloGPT/blob/dev/code/gpt_langchain_history.ipynb
大模型在企业中的应用畅想
启发式交互应用:如低代码平台,或自然语言生成代码
Copilot:AI助手,如微软、Apple的AI助手,或者是企业中的IT系统诊断助手
大语言模型的推理/生成:生成式AI应用