0


如何使用Langchain集成Kimi AI(Moonshot AI)

如何使用Langchain集成Kimi(Moonshot AI)

一、获取API密钥

1. 注册账号

毕竟只有注册过帐号才能拿到key~
Moonshot 登陆

2. 获取密钥

在这里插入图片描述
用户中心 > api Key管理 > 新建

PS:注意保存好你的key,这个key只会在新建的时候展示一次。
PS2:不要把你的key给任何人,有了key就可以使用你的token,token就是钱!

二、环境配置

要确保你的python环境没问题,然后需要下载如下库
python没下载的先下载一下python,这里就不再赘述了

#安装langchain库
pip install langchain
#安装Openai库
pip install openai
# 安装langchain集成社区库
pip install langchain_community

三、上手

先用一下原生的api试试链接是否成功

from openai import OpenAI
# 连接
client = OpenAI(
    api_key ='你的key',
    base_url ='https://api.moonshot.cn/v1',)# prompt
response =  client.chat.completions.create(
    model="moonshot-v1-8k",# 模型名
    messages=[{"role":"system","content":"You are a creative AI."},{"role":"user","content":"请给我的花店起个名,多输出几个结果,直接输出名字,不要输出多余的语句"},],# prompt要求
    temperature=0.8,# 随机度
    max_tokens=20,# 最大输出token数#这个的意思是将结果截取到这个token数,并不是response只有这些token数)# 输出print(response.choices[0].message.content)
1. 花语轩
2. 绿意坊
3. 香韵园

ok,没有问题。

接下来集成到Langchain里试试

import os
from langchain_community.llms.moonshot import Moonshot
os.environ["MOONSHOT_API_KEY"]='你的key'
chat = MoonshotChat(
    model="moonshot-v1-8k",
    temperature=0.8,
    max_tokens=20,)
messages =[
    SystemMessage(content="你是一个很棒的智能助手"),
    HumanMessage(content="请给我的花店起个名,多输出几个结果,直接输出名字,不要输出多余的语句")]
response = chat(messages)print(response)
content='1. 绿意轩花坊\n2. 芳菲满园\n3. 花' additional_kwargs={} response_metadata={'token_usage': {'completion_tokens': 20, 'prompt_tokens': 39, 'total_tokens': 59, 'completion_tokens_details': None, 'prompt_tokens_details': None}, 'model_name': 'moonshot-v1-8k', 'system_fingerprint': None, 'finish_reason': 'length', 'logprobs': None} id='run-e262850d-46da-4fd2-b162-17dbfe05a357-0'

ok,没有问题
这个可以清晰的看出来response到底返回给我们了点什么

四、整合一下

这个使用到了读取配置文件的库,需要下载configparser包

pip install configparser

直接把key输入到运行文件里的安全性很低,很容易泄漏,而且耦合性还高,推荐大家自己写个配置文件,像下面这样:

新建setting.ini文件,将下面这些写入

# setting.ini
# 这里key的内容不需要加引号,直接粘贴进去即可
[Moonshot]
OPENAI_API_KEY=你的key
model=moonshot-v1-8k
url=https://api.moonshot.cn/v1

如果你不只想集成moonshot,还想集成其他的语言模型或者数据库等配置,可以直接在此文件添加section来统一管理,很方便。

新建init.py文件,专用于初始化,方便使用。

# init.pyimport os
import configparser
from langchain_community.llms.moonshot import Moonshot
from openai import OpenAI
config = configparser.ConfigParser()
config.read("setting.ini")
os.environ["MOONSHOT_API_KEY"]= config["Moonshot"]["OPENAI_API_KEY"]# 默认llm配置。
llm = Moonshot(
    model=config["Moonshot"]["model"],
    temperature=0.8,
    max_tokens=20,)# openAi 默认的接口.
client = OpenAI(
    api_key = config["Moonshot"]["OPENAI_API_KEY"],
    base_url = config["Moonshot"]["url"],)

五、检验一下成果

之前的两个示例可以简化成下面这样

import init
# 使用了默认的client配置
response =  init.client.chat.completions.create(
    model="moonshot-v1-8k",
    messages=[{"role":"system","content":"You are a creative AI."},{"role":"user","content":"请给我的花店起个名,多输出几个结果,直接输出名字,不要输出多余的语句"},],
    temperature=0.8,
    max_tokens=20,)print(response.choices[0].message.content)
from langchain_community.chat_models.moonshot import MoonshotChat
from langchain.schema import HumanMessage, SystemMessage
import init
# 这里没有直接用init中的默认配置# 可以直接这样再次定义,不需要再次导入key之类的东西了# 虽然代码中没有直接体现init包,但是不要删,这部初始化调用到了init中设定的环境变量
chat = MoonshotChat(
    model="moonshot-v1-8k",
    temperature=0.6,
    max_tokens=50,)
messages =[
    SystemMessage(content="你是一个很棒的智能助手"),
    HumanMessage(content="请给我的花店起个名,多输出几个结果,直接输出名字,不要输出多余的语句")]
response = chat(messages)print(response)

六、官方网站

最后放一下官方的网站,方便大家学习
Introduction | 🦜️🔗 LangChain
Moonshot AI - 开放平台


本文转载自: https://blog.csdn.net/lonely__snow/article/details/143579550
版权归原作者 孤雪心殇 所有, 如有侵权,请联系我们删除。

“如何使用Langchain集成Kimi AI(Moonshot AI)”的评论:

还没有评论