兼容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/第一章 初识智能体

相关推荐
小白学大数据6 小时前
Python + 大模型行业资讯自动化摘要流水线完整工程实现方案
开发语言·python·自动化
何以解忧,唯有..6 小时前
Go语言中的const:常量声明与iota枚举详解
java·开发语言·golang
沪飘大军6 小时前
goldRush-专门分析黄金的投资理财agent
java·开发语言·elasticsearch
beethobe7 小时前
PythonQt 学习之旅(一):从零构建 C++ 与 Python 的桥梁
c++·python·学习
广州智造7 小时前
如何在HyperMesh运行Python脚本及查找Python API帮助
python·仿真·cae·hypermesh·optistruct
鹏易灵7 小时前
C++——2.常量与 const、constexpr 初识详解
java·开发语言·c++
cooldog123pp7 小时前
cplex完全安装手册,适配matlab和python!
人工智能·python·matlab·cplex
TechWayfarer7 小时前
苏超赛事网站安全防护:WAF、DDoS与仿冒页面如何联动治理
网络·python·安全·flask·ddos
神仙别闹7 小时前
基于C++ 实现 BP 神经网络
开发语言·c++·神经网络
郝学胜-神的一滴7 小时前
CMake 019:程序生成与清理全解析
开发语言·c++·qt·程序人生·软件构建·cmake