最近我接触了LangChain,根据官方描述:
LangChain是一个用于开发由语言模型驱动的应用程序的框架。
这个框架简化了大型语言模型的本地化部署以及一些工具链的建设,使得这些任务变得更加简单。
首先,我尝试在本地运行LangChain。以下是我的步骤:
1. 准备工作
首先,我新建了一个PyCharm项目。项目名字并不重要,随便取一个即可。我这里使用了中文翻译插件,所以显示的是中文界面。
2. 配置API密钥
我新建了一个config.py
文件,用于存储我的API密钥。
然后我们尝试调用gpt实现gpt的问答功能
import openai
import requests
import os
import config
config.init(os)
target_model = 'gpt-3.5-turbo'
openai.api_key = config.openai_api_key
model_list = openai.Model.list().data
print(model_list)
for model in model_list:
if model['object'] == 'model' and model['root'] == target_model:
if not model['permission'][0]['allow_view']:
print("没有权限")
messages = list()
role = input('输入你的角色:')
while True:
prompt = input('输入你想问的:')
new_msg = [{"role": "user", "content": f'{prompt}'}]
messages.extend(new_msg)
# print([{"role": "system","content": f'{role}'}] + messages)
result = requests.post("https://api.openai.com/v1/chat/completions",
headers={'Content-Type': 'application/json',
'Authorization': f'Bearer {openai.api_key}'},
json={
"model" : target_model,
"messages": [{"role": "system",
"content": f'{role}',
}] + messages
})
print(f'{result.json()}')
return_msg = result.json()['choices'][0]['message']
print(f'{return_msg["content"]}')
messages.insert(messages.__sizeof__() - 1,return_msg)
执行查看结果
输入你的角色:>? 厨师
输入你想问的:>? 番茄炒蛋怎么做?
{'id': 'chatcmpl-8EV5pksWJM6OtFMpgC73TqkIcVjWM', 'object': 'chat.completion', 'created': 1698466805, 'model': 'gpt-3.5-turbo-0613', 'choices': [{'index': 0, 'message': {'role': 'assistant', 'content': '番茄炒蛋是一道非常简单的中式家常菜,以下是具体的做法:\n\n材料:\n- 2个鸡蛋\n- 2个番茄\n- 适量的食用油\n- 适量的盐和胡椒粉\n- 适量的葱花(可选)\n\n步骤:\n1. 将鸡蛋打入碗中,加入适量的盐和胡椒粉进行调味,然后搅拌均匀。\n2. 将番茄洗净,去皮切成小块。\n3. 热锅烧热,倒入适量的食用油。\n4. 倒入打好的鸡蛋煎炒,直到鸡蛋凝固变成蛋花状,然后盛出备用。\n5. 同一锅中加入番茄块,用铲子将番茄煮熟,直到番茄变软出水。\n6. 将之前煎好的鸡蛋加入番茄锅中,翻炒均匀。\n7. 番茄和鸡蛋炒熟后,根据个人口味加入适量的盐和胡椒粉进行调味。\n8. 最后可以撒上一些葱花提升口感和香味(可选)。\n9. 炒好的番茄炒蛋即可享用。\n\n希望能帮到你!'}, 'finish_reason': 'stop'}], 'usage': {'prompt_tokens': 30, 'completion_tokens': 445, 'total_tokens': 475}}
番茄炒蛋是一道非常简单的中式家常菜,以下是具体的做法:
材料:
- 2个鸡蛋
- 2个番茄
- 适量的食用油
- 适量的盐和胡椒粉
- 适量的葱花(可选)
步骤:
1. 将鸡蛋打入碗中,加入适量的盐和胡椒粉进行调味,然后搅拌均匀。
2. 将番茄洗净,去皮切成小块。
3. 热锅烧热,倒入适量的食用油。
4. 倒入打好的鸡蛋煎炒,直到鸡蛋凝固变成蛋花状,然后盛出备用。
5. 同一锅中加入番茄块,用铲子将番茄煮熟,直到番茄变软出水。
6. 将之前煎好的鸡蛋加入番茄锅中,翻炒均匀。
7. 番茄和鸡蛋炒熟后,根据个人口味加入适量的盐和胡椒粉进行调味。
8. 最后可以撒上一些葱花提升口感和香味(可选)。
9. 炒好的番茄炒蛋即可享用。
希望能帮到你!
在这个例子中,我使用了OpenAI的GPT-3.5 Turbo模型进行了交互。如果模型无法回答特定问题,我还使用了SerpAPI来进行谷歌搜索。
请注意,为了使用SerpAPI,你需要去Google搜索开发平台注册一个API密钥来使用SerpAPI服务。
下一篇我会尝试用Lanchain实现一个脚本对话。