兼容OpenAI接口服务的实现类

python 复制代码
from openai import OpenAI

class OpenAICompatibleClient:
    """
    一个用于调用任何兼容OpenAI接口的LLM服务的客户端。
    """
    def __init__(self, model: str, api_key: str, base_url: str):
        self.model = model
        self.client = OpenAI(api_key=api_key, base_url=base_url)

    def generate(self, prompt: str, system_prompt: str) -> str:
        """调用LLM API来生成回应。"""
        print("正在调用大语言模型...")
        try:
            messages = [
                {'role': 'system', 'content': system_prompt},
                {'role': 'user', 'content': prompt}
            ]
            response = self.client.chat.completions.create(
                model=self.model,
                messages=messages,
                stream=False
            )
            answer = response.choices[0].message.content
            print("大语言模型响应成功。")
            return answer
        except Exception as e:
            print(f"调用LLM API时发生错误: {e}")
            return "错误:调用语言模型服务时出错。"

来源:https://datawhalechina.github.io/hello-agents/#/./chapter1/第一章 初识智能体

相关推荐
扶苏-su1 分钟前
Java--转换流-InputStreamReader 和 OutputStreamWriter
java·开发语言
无限进步_20 分钟前
【C语言&数据结构】二叉树遍历:从前序构建到中序输出
c语言·开发语言·数据结构·c++·算法·github·visual studio
ai_top_trends1 小时前
不同 AI 生成 2026 年工作计划 PPT 的使用门槛对比
人工智能·python·powerpoint
花北城1 小时前
【C#】MES消耗类数量逻辑处理(物料消耗、打包装箱、生产订单派工等)
开发语言·c#
半夏知半秋1 小时前
kcp学习-skynet中的kcp绑定
开发语言·笔记·后端·学习
扶苏-su1 小时前
Java--标准输入输出流
java·开发语言
adayabetter1 小时前
Python自动化办公提效相关脚本
python·自动化·自动化脚本
奋斗的小青年!!1 小时前
Flutter跨平台开发OpenHarmony应用:个人中心实现
开发语言·前端·flutter·harmonyos·鸿蒙
石头wang2 小时前
jmeter java.lang.OutOfMemoryError: Java heap space 修改内存大小,指定自己的JDK
java·开发语言·jmeter
二狗哈2 小时前
czsc入门8:Signal信号
python·量化·czsc