当前位置: 首页 > wzjs >正文

网站代码如何做优化网络营销环境宏观微观分析

网站代码如何做优化,网络营销环境宏观微观分析,网站在线客服咨询,医疗美容手机网站建设Python-MCPAgent开发-DeepSeek版本 尝试Windows使用Python完成【McpServer】【McpAgent】开发,当前使用OpenAI-Agents框架进行开发 1-核心知识点 先完成【LLM】配置再完成【McpServer】开发再完成【Agent】开发完成【LLM】【McpServer】【Agent】请求互通 2-思路整…

Python-MCPAgent开发-DeepSeek版本

尝试Windows使用Python完成【McpServer】+【McpAgent】开发,当前使用OpenAI-Agents框架进行开发


1-核心知识点

  • 先完成【LLM】配置
  • 再完成【McpServer】开发
  • 再完成【Agent】开发
  • 完成【LLM】+【McpServer】+【Agent】请求互通

2-思路整理

1-开发思路

  • 1-熟悉【SSE模式的MCPServer】开发
  • 2-熟悉【stdio模式的MCPServer】开发
  • 3-熟悉【启动MCPServer】的三种方式
    • 3.1-直接启动:python mcp_server.py
    • 3.2-代码中uv使用:subprocess.Popen([“uv”, “run”, server_file])
    • 3.3-使用mcpInspector网页:mcp dev mcp_server.py
  • 4-熟悉【Agent增强外部能力】的两种方式
    • 4.1-调用tool:Agent(name=“Assistant”, instructions=“用中文回复”, tools=[get_weather])
    • 4.2-调用tool:Agent(name=“Assistant”, instructions=“用中文回复”, mcp_servers=[mcp_server])

2-Tool和MCP的区别

都可以通过【平台】把肚子填饱,但是是两种【经济模式】

  • 1)Tool->自家厨房
  • 2)MCP->快餐外卖(一套标准的经济体系,商家和骑手语言可以互通)

3-MCP Inspector调试-两种方式

  • 使用Node运行后-再调用Python脚本
  • 直接使用python的mcp[cline]命令

4-Agent调用3种方式

  • 1-直接使用tool
  • 2-运行mcpServer_sse(远程服务->直接运行+subprocess子进程)
  • 3-运行mcpServer_stdio(本地服务->直接运行)


3-参考网址

  • 1)OpenAI的官方文档:https://openai.github.io/openai-agents-python/
  • 2)MCP官网的Python样例:https://github.com/openai/openai-agents-python/tree/main
  • 3)个人开发代码仓库:https://gitee.com/enzoism/python_mcp_02_openai_agent

4-动手实践

1-【McpServer】开发

直接参考:https://blog.csdn.net/2301_77717148/article/details/147455632

  • openAI代码:https://github.com/openai/openai-agents-python/blob/main/examples/model_providers/custom_example_provider.py
  • 【McpServer】个人开发代码仓库:https://gitee.com/enzoism/python_mcp_client_server/tree/master/mcp_server

2-【McpClient】开发

直接参考官网记录开发过程

1-空工程初始化环境

mkdir my_project
cd my_project
python -m venv .venv

2-激活环境

# Windows
source .venv/Scripts/activate
# Mac
source .venv/bin/activate

3-添加依赖

对应的依赖是在激活的环境中

# 1-安装MCP和Openai-agents
pip install uv httpx mcp openai-agents

4-创建.env文件

添加对应的环境变量

BASE_URL=https://api.deepseek.com/v1
API_KEY=sk-XXX
MODEL_NAME=deepseek-chat

5-创建

直接参考MCP官网的PythonClient样例:https://github.com/openai/openai-agents-python/blob/main/examples/model_providers/custom_example_provider.py

补充说明:MCP官网的PythonClient样例,没有进行环境变量的加载,在代码中我们使用dotenv进行记载(
代码基本上就是复制过来了,只做了少量的修改)

import asyncio
import osfrom agents import (Agent,Model,ModelProvider,OpenAIChatCompletionsModel,RunConfig,Runner,function_tool,set_tracing_disabled,
)
from dotenv import load_dotenv
from openai import AsyncOpenAI# 环境变量加载相关# 加载.env文件
load_dotenv()
# 从.env文件中获取BASE_URL、API_KEY、MODEL_NAME信息
BASE_URL = os.getenv("BASE_URL") or ""
API_KEY = os.getenv("API_KEY") or ""
MODEL_NAME = os.getenv("MODEL_NAME") or ""if not BASE_URL or not API_KEY or not MODEL_NAME:raise ValueError("请通过环境变量或代码设置EXAMPLE_BASE_URL、EXAMPLE_API_KEY、EXAMPLE_MODEL_NAME。")"""
本例使用自定义提供程序调用Runner.run()的部分,并直接调用OpenAI进行其他操作。
步骤:1. 创建一个自定义的OpenAI客户端。
2. 创建一个使用自定义客户端的ModelProvider。
3. 在调用Runner.run()时使用ModelProvider,仅在我们想使用自定义LLM提供程序时。
注意,在本例中,我们假设您没有从platform.openai.com获取API密钥,因此禁用了跟踪。
如果您有API密钥,您可以选择设置`OPENAI_API_KEY`环境变量或调用set_tracing_export_api_key()来设置跟踪特定的密钥。
"""
# ①创建一个自定义的OpenAI客户端-Client
client = AsyncOpenAI(base_url=BASE_URL, api_key=API_KEY)
set_tracing_disabled(disabled=True)# ②创建一个使用自定义客户端的-ModelProvider
class DeepSeekModelProvider(ModelProvider):def get_model(self, model_name: str | None) -> Model:return OpenAIChatCompletionsModel(model=model_name or MODEL_NAME, openai_client=client)# ③实例化ModelProvider对象
CUSTOM_MODEL_PROVIDER = DeepSeekModelProvider()# ④定义一个工具函数
@function_tool
def get_weather(city: str):print(f"[debug] getting weather for {city}")return f"The weather in {city} is sunny."async def main():# ⑤创建一个Agentagent = Agent(name="Assistant", instructions="你只能用中文进行回复", tools=[get_weather])# ⑥获取Agent对话的结果result = await Runner.run(agent,"给我讲一个笑话吧!",run_config=RunConfig(model_provider=CUSTOM_MODEL_PROVIDER),)print(result.final_output)# ⑦获取Agent对话的结果-没有配置RunConfig使用的是OpenAI的默认模型# result = await Runner.run(#     agent,#     "给我讲一个笑话吧!",# )# print(result.final_output)if __name__ == "__main__":asyncio.run(main())

http://www.dtcms.com/wzjs/511705.html

相关文章:

  • 那些免费网站做推广比较好个人接app推广单去哪里接
  • 常州做网上废品收购网站拉新注册app拿佣金
  • 长沙做网站设计长尾关键词
  • 民兵信息化网站建设常见的网络营销方法有哪些
  • 如何做监控网站成人英语培训班哪个机构好
  • 鹤壁网站推广公司seo工作前景如何
  • 上海营销型网站建设公司跨境电商关键词工具
  • 每日数码科技新鲜事南宁优化推广服务
  • 成都公司建设网站今天刚刚的最新新闻
  • 做教育业网站北京优化网站公司
  • 太原心诺做网站佛山网站建设
  • 做网站怎么上传图片企业自建网站
  • 衢州做网站电商关键词工具
  • 网页设计自学网站网络营销的案例有哪些
  • 如何打造网站啦啦啦资源视频在线观看8
  • 不知情的情况下帮别人做网站他违法百度云搜索资源入口
  • 前端搜索网站引擎怎么做疫情最新政策最新消息
  • 基于网站开发小程序学软件开发学费多少钱
  • 好看的网站建设杭州新站整站seo
  • 如何看一个网站是谁做的seo营销培训咨询
  • 南昌做网站的公司有哪些浙江网站推广
  • 盐山县做网站价格网站收录免费咨询
  • 做网站犯法网络营销的主要传播渠道是
  • wordpress规则什么是seo营销
  • 哪个网站可以做图片小网站关键词搜什么
  • 如何把做的网站放到百度上百度手机版
  • 室内设计网站集合友链交换
  • 山西做网站怎么做百度竞价排名怎么靠前
  • wordpress批量拿站谷歌浏览器app下载安装
  • 做互联网小程序 和网站有没有前景商城全网推广运营公司