微信扫码
添加专属顾问
我要投稿
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+中大型企业
2026-02-24
当软件不值钱了以后,最稀缺的资源是什么?
2026-02-24
OpenAI Codex负责人:我们熟悉的编程方式正在终结 | Jinqiu Select
2026-02-24
OpenClaw 最佳实践:5条“基本原则”
2026-02-24
春节归来第一天,Second Me 做了一个「Agent 互联网的 App Store」
2026-02-24
万字深度解读 MCP Apps:重构 Web 应用,开启 AI 助手的“小程序”时代。
2026-02-24
AI Agent系列|什么是 ReAct Agent?
2026-02-24
刚刚,Anthropic深夜大点名,这三家中国公司进行蒸馏攻击?!
2026-02-23
Claude Code如何突破白领工业革命
2026-01-24
2026-01-10
2026-01-01
2026-01-26
2025-12-09
2026-02-03
2025-12-21
2026-01-09
2026-01-09
2026-01-27
2026-02-24
2026-02-24
2026-02-20
2026-02-14
2026-02-13
2026-02-12
2026-02-12
2026-02-11