【课程链接】https://www.ai360labs.com/playground/course/66813572135124992/detail
【适用人群】
- 入门学习Langchain的同学
- 轻体验
ChatOpenAI
的同学,平台提供Api-key
,应该是很小的token额度,仅供练习
LangChain是一个开源框架,专门用于开发大型语言模型应用。
LangChain的设计初衷是解决大型语言模型应用开发中的一个常见问题,即编写大量的粘合代码。
这些代码通常用于连接不同的LLM、处
理输入和输出、以及管理整个应用的流程。
LangChain的目标是通过提供一个统一的框架和一套工具来简化这个开发流程
,使得开发人员可以更轻松地构建复杂的语言模型应用。
编写一个取名程序
在LLM应用的开发领域,LangChain为开发者带来了前所未有的可能性。通过编写一个取名程序,你将对LangChain框架有一个初步的了解。 以下案例改编自AI开发新书《LangChain入门指南》第二章。
环境安装配置
首先,为了能够顺利进行开发工作,需要确保机器上安装了相应的Python包。开发者可以通过以下命令轻松完成安装:
%pip install --upgrade --quiet openai langchain-openai langchain
Api-key在个人资料中
import os
API_SECRET_KEY = "填写【个人资料】中获取的最新token"
BASE_URL = "https://www.ai360labs.com/openai/v1/"
os.environ["OPENAI_API_KEY"] = API_SECRET_KEY
os.environ["OPENAI_BASE_URL"] = BASE_URL
制作取名程序
有了这些基础设置,接下来就可以利用LLM进行实际的编程工作了。
想象一下,有一个程序可以基于用户的描述来为新生儿提供创意的命名建议。
比如,当问及“龙年出生的女宝宝,希望名字的寓意美好”:
导入OpenAI模块,我们使用聊天模型ChatOpenAI.
from langchain_openai import ChatOpenAI
llm = ChatOpenAI()
from langchain_openai import ChatOpenAI
llm.predict("龙年出生的女宝宝,希望名字的寓意美好,请你取个好听的名字,我姓吴")
/tmp/ipykernel_1483/4285245308.py:3: LangChainDeprecationWarning: The
methodBaseChatModel.predict
was deprecated in langchain-core 0.1.7
and will be removed in 1.0. Use :meth:~invoke
instead.
llm.predict(“龙年出生的女宝宝,希望名字的寓意美好,请你取个好听的名字,我姓吴”)
/opt/conda/lib/python3.11/site-packages/pydantic/main.py:347:
UserWarning: Pydantic serializer warnings: Expectedint
but got
str
- serialized value may not be as expected return
self.pydantic_serializer.to_python(
‘为龙年出生的女宝宝取名,可以考虑一些寓意美好、音韵优美的名字。以下是几个建议:\n\n1. 吴欣妍 -
“欣”意为快乐、欣喜,“妍”意为美丽,整体寓意为快乐美丽的女孩。\n \n2. 吴雪婷 -
“雪”代表纯洁和美好,“婷”意为优雅,寓意着纯洁优雅的气质。\n\n3. 吴心妤 -
“心”代表心灵、内心,“妤”意为美好,寓意有美好心灵的女孩。\n\n4. 吴紫涵 -
“紫”象征高贵和优雅,“涵”意为包容,寓意着高贵而包容的气质。\n\n5. 吴梦琪 -
“梦”代表梦想和希望,“琪”意为美玉,寓意着有美好梦想的女孩。\n\n希望这些名字能为您的女宝宝带来美好的寓意!’
注意:LLM输出的回复并不是确定,温度设置越高,创意性越强。