微信扫码
添加专属顾问
我要投稿
import openaiimport osimport json# 加载 .env 文件from dotenv import load_dotenv, find_dotenv_ = load_dotenv(find_dotenv())# 从环境变量中获得你的 OpenAI Key和配置URLopenai.api_key = os.getenv('OPENAI_API_KEY')openai.api_base = os.getenv('OPENAI_API_URL')model = os.getenv('OPENAI_API_MODEL')def get_current_cluster_state(cluster_name):print(f"cluster:{cluster_name}")return"""ERROR: Failed to pull image "tanjp/docker/dsp:latest"""funcs = {"get_current_cluster_state": get_current_cluster_state}def run(input):msg=[{"role":"user","content":input}]ret = run_conversation(msg)return ret["content"]#function 接受一个名为 "cluster_name" 的参数,用于指定要查询状态的集群名称#temperature=0,# 模型输出的随机性,0 表示随机性最小。需要填写为0,否则会出现其他问题def run_conversation(msg):response = openai.ChatCompletion.create(model=model,messages=msg,temperature=0,# 模型输出的随机性,0 表示随机性最小functions=[{"name": "get_current_cluster_state","description": "Get the current state in a given cluster", #⽅法⽤途描述"parameters": {"type": "object","properties": {"cluster_name": {"type": "string","description": "the name of the cluster",#参数描述},},"required": ["cluster_name"],},}],function_call="auto",#"""控制模型如何响应函数调⽤• “none” 表示模型不调⽤函数• “auto” 表示模型可以⾃动调⽤函数• 通过 {"name": “my_function”} 强制模型调⽤指定函数• 默认值为 "auto"""")message =response["choices"][0]["message"]print("----- message ----")print(message)print("----- message ----")# 如果不需要调用function,则直接返回结果if not message.get("function_call"):return message# 获取调用的方法function_name = message["function_call"]["name"]function_args = json.loads(message["function_call"]["arguments"])print(function_args)res = funcs[function_name](function_args["cluster_name"])message["content"]=Nonemsg.append(message)msg.append({"role": "function","name": function_name,"content": res,})return run_conversation(msg)#python入口函数if __name__ == "__main__":#print(run("Hello"))#集群“DSP”出了什么问题?如果有错误,给我一些建议。print(run("What's wrong with the cluster 'DSP'? And if there's an error, give me some suggestion. "))
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-12-27
GPT-6 明年 Q1 突袭?OpenAI 战略大转向:这不仅是模型战,更是“生存战”!
2025-12-27
推理LLM模型正在放弃temperature参数
2025-12-27
AgentScope AutoContextMemory:告别Agent上下文焦虑
2025-12-27
非技术小白专用指南,5分钟学会Claude Code Skills
2025-12-27
三种AI记忆让智能体真正“长大”
2025-12-27
AI Agent 记忆系统:从短期到长期的技术架构与实践
2025-12-27
构建企业级智能体AI系统的七层架构
2025-12-26
史上最最通俗的,AI发展历程综述!
2025-10-26
2025-10-02
2025-09-29
2025-10-07
2025-09-30
2025-11-19
2025-10-20
2025-11-13
2025-10-18
2025-10-02
2025-12-25
2025-12-25
2025-12-25
2025-12-22
2025-12-16
2025-12-15
2025-12-14
2025-12-12