在Marcode使用Langchain的过程中,我总结了一些问题与注意事项,希望能对大家有所帮助。
1、配置流程
首先,在Marcode中使用Langchain需要先进行一些简单的配置,具体可以参考README.md,其中配置API时需注意,要去掉<>
export OPENAI_API_KEY=<YOU_OPENAI_API_KEY>
export OPENAI_BASE_URL=<YOU_OPENAI_BASE_URL>
export LLM_MODELEND=<YOUR_MODEL_ENDPOINT>
而其中API_KEY要参考README文档中去火山引擎中获取火山引擎
这里帮大家标下文件输入位置和终端位置,其中README文档,在文件那栏最下方,记得往下滑。
2、课程00/02
00/02中第50行左右的代码需将get中的更改为model=os.environ.get("LLM_MODELEND")
# ---- PartIII 初始化并运行LangChain智能体
# llm = OpenAI(temperature=0.2)
llm = ChatOpenAI(
model=os.environ.get("LLM_MODELEND"),
temperature=0,
)
3、课程01/01
这里之所以不能运行是因为OPENAI中的Completions API已经在2023年7月完成最后一次更新并废弃,所以该代码需要对其格式进行更改,这里推荐一下大佬整理的笔记中有写到juejin.cn/post/743263…
4、课程02/QA文档系统
这里一开始如果没做任何更改的话,会出现不断报错Qgrant.from_document与error:404之类的错误。这里的问题是因为,在注册第一次API时,进行创建在线推理点处选取的模型是Doubao-pro-32k,其中并不包含embedding模型的;
然而代码中是需要用到embedding模型的,所以我们需要再去创建一个在线推理点:
这里选择Doubao-embedding-text-240715.
选择完之后我们还需去之前配置api的地方(/home/cloudide/.cloudiderc)去添加模型id:
export EMBEDDING_MODELEND=<YOUR_MODEL_ENDPOINT>
这里所说的模型id是指ep-开头的那串字母,再配置完过后还需要在DocQA.py中加上下面代码
os.environ["EMBEDDING_MODELEND"] = 'YOUR_MODEL_ENDPOINT'
这里修改完后,点击运行即可,需要注意的是需要先点击右侧任务栏中的Web预览
这样子的话,就会出现相对应的页面,可以输入问题,进行询问,这里就不过多展示了。
5、课程2思考题
题目: 从今天的两个例子看起来,使用LangChain并不比直接调用OpenAI API来得省事?而且也仍然需要OpenAI API才能调用GPT家族模型。那么LangChain的核心价值在哪里?至少从这两个示例中没看出来。针对这个问题,你仔细思考思考。 回答:个人认为的核心价值在于它提供了一个更高层次的抽象和工具集,使得构建复杂的应用更加便捷和模块化:
1)如作者所说,Langchain可以调用其他开源社区的API如:HuggingFace、google等,使得它更加的灵活,在想要使用其他模型的时候并不需要来回切换,只需直接调用其SDK即可,这体现了它的优秀集成能力。
2)除此之外,LangChain拥有活跃的社区和丰富的插件生态,这使它充满了更多的可能和无限的潜力。