当前位置:   article > 正文

Moonshot AI API使用(2)-环境变量配置和简单对话demo_moonshot ai 配置环境变量

moonshot ai 配置环境变量

1、添加环境变量

api key有多种使用方式,添加环境变量这种是最安全的,强烈推荐!

打开文件

vi ~/.env
  • 1

在打开的文件中添加下面两行

export MOONSHOT_API_KEY="你的MOONSHOT API KEY"
export MOONSHOT_API_URL="https://api.moonshot.cn/v1"
  • 1
  • 2

保存并退出

:wq
  • 1

2、安装需要的包

pip install -upgrade openai
pip install python-dotenv  # 安装dotenv,用于加载环境变量
  • 1
  • 2

3、查看可用的模型

不同级别的模型使用时的价格是不一样的,具体参考官网。

import os
from openai import OpenAI
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv())  # 读取本地 .env 文件,里面定义了 MOONSHOT_API_KEY和 MOONSHOT_API_URL

client = OpenAI(
    api_key = os.getenv("MOONSHOT_API_KEY"),
    base_url = os.getenv("MOONSHOT_API_URL")
)
 
model_list = client.models.list()
model_data = model_list.data
 
for i, model in enumerate(model_data):
    print(f"model[{i}]:", model.id)

# model[0]: moonshot-v1-8k
# model[1]: moonshot-v1-32k
# model[2]: moonshot-v1-128k
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

4、moonshot官网例子-单轮对话

from openai import OpenAI
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv())  # 读取本地 .env 文件,里面定义了 MOONSHOT_API_KEY和 MOONSHOT_API_URL

client = OpenAI(
    api_key = os.getenv("MOONSHOT_API_KEY"),
    base_url = os.getenv("MOONSHOT_API_URL")
)
 
completion = client.chat.completions.create(
    model = "moonshot-v1-8k",
    messages = [
        {"role": "system", "content": "你是 Kimi,由 Moonshot AI 提供的人工智能助手,你更擅长中文和英文的对话。你会为用户提供安全,有帮助,准确的回答。同时,你会拒绝一切涉及恐怖主义,种族歧视,黄色暴力等问题的回答。Moonshot AI 为专有名词,不可翻译成其他语言。"},
        {"role": "user", "content": "你好,我叫李雷,1+1等于多少?"}
    ],
    temperature = 0.3,
)
 
print(completion.choices[0].message.content)
# 你好,李雷!1+1 等于 2。这是一个基本的数学加法问题。如果你有其他问题或需要帮助,请随时告诉我。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

5、moonshot官网例子-多轮对话

import os
import json
from openai import OpenAI
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv())  # 读取本地 .env 文件,里面定义了 MOONSHOT_API_KEY和 MOONSHOT_API_URL

client = OpenAI(
    api_key = os.getenv("MOONSHOT_API_KEY"),
    base_url = os.getenv("MOONSHOT_API_URL")
)

 
history = [{"role": "system", 
    "content": "你是 Kimi,由 Moonshot AI 提供的人工智能助手,你更擅长中文和英文的对话。你会为用户提供安全,有帮助,准确的回答。同时,你会拒绝一切涉及恐怖主义,种族歧视,黄色暴力等问题的回答。Moonshot AI 为专有名词,不可翻译成其他语言。"}]

def format_json(json_string):
    # json_string = ""
    if (not isinstance(json_string,list)):
        json_str = json.loads(json_string.model_dump_json())
    print(json.dumps(
        json_string,
        indent=4,
        ensure_ascii=False
    ))
    return

def chat(query, history):
    history.append({
        "role": "user", 
        "content": query
    })
    completion = client.chat.completions.create(
        model="moonshot-v1-8k",
        messages=history,
        temperature=0.3,
    )
    result = completion.choices[0].message.content
    history.append({
        "role": "assistant",
        "content": result
    })
    return history
 
print(fromat_json(chat("地球的自转周期是多少?", history)))
print(fromat_json(chat("月球呢?", history)))
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45

两次输出结果如下:
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/人工智能uu/article/detail/767480
推荐阅读
相关标签
  

闽ICP备14008679号