免费第三方api-key(硅基流动)使用OpenAI格式,还能控制大模型的输出格式,不能说真香,只能说 真香Plus!

API-Key领取方法看这篇教程 【1024送福利】硅基流动送2000万token啦!撒花✿✿ 附使用教程

支持十几个免费的大模型
尤其是通义千问Qwen2.5-7b智谱glm-4
详见模型广场
在这里插入图片描述

通过 OpenAI接口调用,就能使用跟OpenAI类似的函数功能
response_format,这不比LangChainParse方便多啦!
代码如下

import json  
from openai import OpenAI

client = OpenAI(
    api_key="sk-pkyxxxcje", # 从https://cloud.siliconflow.cn/account/ak获取
    base_url="https://api.siliconflow.cn/v1"
)

response = client.chat.completions.create(
        model="THUDM/glm-4-9b-chat",	# 各种大模型
        messages=[
            {"role": "system", "content": "You are a helpful assistant designed to output JSON."},
            {"role": "user", "content": "? 2020 年世界奥运会乒乓球男子和女子单打冠军分别是谁? "
             "Please respond in the format {\"男子冠军\": ..., \"女子冠军\": ...}"}
        ],
        response_format={"type": "json_object"}
    )

print(response.choices[0].message.content)
print(type(response.choices[0].message.content))

output_dict = json.loads(response.choices[0].message.content)
print('\n',output_dict)
print(type(output_dict))
print('男子冠军:',output_dict["男子冠军"])

输出如下

{"男子冠军": "马龙", "女子冠军": "陈梦"}
<class 'str'>

 {'男子冠军': '马龙', '女子冠军': '陈梦'}
<class 'dict'>
男子冠军: 马龙

json.loads转一下,就能取到dict中的值了

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐