1.模型的初始化
环境变量中的APIkey的名字不能乱起名,不知道怎么起名可以开langchain的官方文档,langchain会根据模型的模型的名字自动去找模型的提供商
因为有一些模型lanchain是不支持的所以我们要把一些模型伪装成openai的供应商
mode_provider=openai
然后更改base_url 和 apikey
调整模型参数
特属的模型不支持openAI
需要langchain提供的社区版的模型,
2.模型调用
我们之前模型的调用是左图,通过可以通过参数来控制请求的形式,是用户还是模型,是流式返回还是什么返回,
我们还可以使用其他封装好的函数,进行模型调用,这样会显得更加的简介
在智能体中调用
但是呢一般不这么用,我们是要创建一个智能体,我们要在智能体中去调用, 让我们来看看吧
相对而言,模型的调用和agint调用都是相差不大的,但是返回的结果是有些差异的,agint调用会返回更多的信息,如人类信息,AI信息,
流式调用
流式调用需要再阻塞调用的基础上添加一个参数,就是stream_mode=“message” 他还有好多其他不同的方式。
在agint中langchain中也封装额件单清晰的请求
这种方式对于返回的数据还有更便捷,更直观的打印方式message.pretty_print()
同样要也支持多模态的消息
例如图片
首先我们的大模型要是支持多模态的大模型,然后未长成openai的方式去调用
使用的时候他的消息很特殊,是数组,数组中一般情况下是两条记录,一个是文本,告诉AI的文本,一个是图片的地址
如果是本地的图片,就是图片bass64的转码格式
音频和视频都是大同小异,可以都参考官方文档