使用Trae编辑器与MCP协议构建高德地图定制化服务

目录

一、使用Trae编辑器配置高德MCP Server 

1.1 Trae介绍

1.2 从mcp.so中获取配置高德地图mcp server配置信息

1.3 高德地图开发者配置

1.4 添加Filesystem 到Trae

1.5 使用结果展示

1.6 MCP常见命令行工具和包管理说明

1.7 Function Call工具和MCP技术对比

二、本地开发自己的MCP Server

2.1 MCP Server开发

 将 MCP 添加到Python 项目中,使用 uv 来管理Python 项目。

创建虚拟环境和激活

 将 MCP 添加到项目依赖中

创建weather.py

 AI编辑器配置MCP

测试mcp server

2.2 MCP Client 开发

配置项

环境搭建 

 创建 client.py

2.3 整合测试

本文介绍如何使用Trae编辑器与MCP协议配置高德地图服务并开发定制化MCP Server

一、使用Trae编辑器配置高德MCP Server 

1.1 Trae介绍

Trae是字节跳动于2025年推出的AI原生集成开发环境,提供 Claude 3.5、GPT-4o 等模型免费不限量调用

与 Cursor 对比:Trae 更侧重中文支持、企业级协作及全流程自动化,Cursor 则强于代码调试和复杂项目优化

官网地址:https://www.trae.com.cn/

进入官网直接下载 然后next next 安装即可:

下载后 登录 然后打开长这样:

1.2 从mcp.so中获取配置高德地图mcp server配置信息

访问https://mcp.so/ 找到高德地图官方MCP server 

需要copy这个配置出来

然后在Trae中手动添加

添加到这里就可以  高德key的获取在下面章节

1.3 高德地图开发者配置

地址:https://lbs.amap.com/ 访问后进入控制台 

进入控制台后 初次使用需要个人信息认证 按步骤操作就可以

 先创建应用 (初次使用页面上有新手指引)

然后创建key

copy这个key 放到刚才Trae手动添加mcp server的地方

配置成功会有 √ 可使用标识 。出现红色的×  可以点×图标进去看看错误log

注意:安装(有node环境即可,即npm存在就可以)

npm没装 手动配置这步是会错误的!!!

1.4 添加Filesystem 到Trae

从Trae中添加

现在已经加好了2个

1.5 使用结果展示

选择Builder with MCP  然后再输入问题:

我后天去安徽合肥玩3天的旅行。你规划下攻略 ,需要将行程和天气放一起进行规划 再加上交通工具 然后生成kmTravel.html

查看最后结果:

1.6 MCP常见命令行工具和包管理说明

 npx:Node.js 的 “即跑即用” 执行工具
 npx是npm命令的升级版本,功能强大, 侧重于执行命令的,执行某个模块命令,会自动安装模块,但是重在执行某个命令。

在 MCP 开发中,npx主要用于调试 MCP 服务器或执行与 MCP 协议相关的 Node.js 工具


uv:Rust 编写的 Python 极速包管理器
uv是用 Rust 开发的 Python 包与项目管理器,主打极速创建虚拟环境和依赖隔离。

在 MCP 开发中,uv主要用于管理 Python 实现的 MCP 服务器或工具的依赖环境,适合需要快速创建、切换开发环境的场景

uvx:uv 的 “临时环境执行” 扩展工具

uvx是uv工具链的扩展命令,定位为临时环境执行器。

无需提前创建环境,直接为单次命令创建临时虚拟环境,执行后自动清理,适合一次性工具调用

在 MCP 中,uvx主要用于临时运行 Python 实现的 MCP 工具(如官方的mcp-server-fetch)

1.7 Function Call工具和MCP技术对比

MCP解决的核心问题
协议标准化: 通过定义统一的通信规范(类似 USB-C 接口),将传统 Tool/Function Call 的 “定制化适配” 转化为 “标准化接入”
例如,开发一个 MCP 兼容的数据库服务器后,可被 千问、GPT-4 等所有支持 MCP 的模型调用,无需重复开发

效率提升:传统集成中,开发者需为每个工具编写 API 调用代码(如天气查询需处理 HTTP 请求、JSON 解析等)
MCP 提供标准化 SDK,开发者只需关注业务逻辑,接口适配成本趋近于零。

Function Call
每个工具独立开发接口,形成 “烟囱式” 架构(如为 每个API,数据库、 分别编写适配代码)。
手动串联多个工具调用(如先调用天气 API,再调用地图 API),流程硬编码且难以维护。
绑定特定模型,迁移成本高(如从 GPT-3.5 迁移至 Claude 需重写所有工具调用逻辑)。

优先选择 MCP 的场景
复杂企业级应用:需集成多个异构系统(如 ERP、CRM、邮件、数据库),且未来可能扩展新工具。
跨模型部署:需支持多 LLM 供应商(如同时使用 Claude 和 GPT)。
敏感数据处理:涉及医疗、金融等受监管数据,需严格权限控制和审计

优先选择 Function Call 的场景
快速原型开发:简单功能验证(如天气查询、计算器),追求最短开发周期。
封闭环境应用:工具逻辑完全内置于当前系统(如内部知识库问答),无需外部交互。
深度依赖特定模型:需利用专有功能(如 GPT-4 的代码解释器)。

混合架构策略
对于大型项目,可采用 “MCP+Function Call” 混合架构:
核心业务流程:通过 MCP 协议实现标准化集成(如数据库、API)。
边缘功能模块:使用 Function Call 快速实现轻量级工具调用(如简单计算器)。
这种策略既能享受 MCP 的扩展性与安全性,又能保留 Function Call 的敏捷性。

二、本地开发自己的MCP Server

基于高德地图接口,开发定制化的MCP Server

参考官方文档:https://modelcontextprotocol.io/introduction

@mcp.tool() 装饰器

用于标记工具函数,将普通Python函数注册为MCPServer可调用的服务方法。

通常配合协议解析器使用,自动暴露函数到服务接口。

@mcp.resource 装饰器

用于定义资源型接口(类似RESTful API),处理HTTP请求或自定义协议的资源操作。

通常与URL路由或协议动作绑定,支持CRUD操作。

2.1 MCP Server开发

本节内容是在window11上操作的 。MacOS/Linux 有些命令不一样 。见官网demo

 将 MCP 添加到Python 项目中,使用 uv 来管理Python 项目。

#安装uv环境

pip install uv

uv init nnw-mcp-server-demo
cd nnw-mcp-server-demo

 然后再vscode中选择文件夹打开即可

创建虚拟环境和激活

uv venv

# 激活虚拟环境
# On Windows:
.venv\Scripts\activate
# On Unix or MacOS:
source .venv/bin/activate

 目录前面是项目名称就可以

 将 MCP 添加到项目依赖中

uv add mcp[cli] httpx

创建weather.py
from typing import Any, Optional
import httpx
from mcp.server.fastmcp import FastMCPmcp = FastMCP("amap-weather")# 高德地图API常量 就是上个章节的那个Key
AMAP_API_BASE = "https://restapi.amap.com/v3"
AMAP_API_KEY = "2f92a69cxxxxxxxxxxxxxxxxxxx"
USER_AGENT = "amap-weather-app/1.0"async def make_amap_request(endpoint: str, params: dict) -> dict[str, Any] | None:"""通用高德API请求函数(带错误处理)Args:endpoint: API接口路径(如"/weather/weatherInfo")params: 请求参数(自动附加key和基础参数)"""print("正在发起高德API请求...make_amap_request")base_params = {"key": AMAP_API_KEY, "output": "JSON"}full_params = {**base_params, **params}async with httpx.AsyncClient() as client:try:response = await client.get(f"{AMAP_API_BASE}{endpoint}",params=full_params,headers={"User-Agent": USER_AGENT},timeout=30.0,)response.raise_for_status()  # 检查HTTP状态码(非200抛异常)data = response.json()# 处理高德API业务错误码(如key无效、参数错误)if data.get("status") != "1":err_msg = data.get("info", "未知错误")print(f"高德API请求失败:{err_msg}")return Nonereturn dataexcept Exception as e:print(f"请求异常:{str(e)}")return Nonedef format_realtime_weather(data: dict) -> str:"""格式化实时天气数据为可读文本"""realtime = data["lives"][0]  # 高德实时天气数据在lives数组中return f"""城市:{realtime['city']}实时天气:{realtime['weather']}({realtime['temperature']}°C)湿度:{realtime['humidity']}%风向:{realtime['winddirection']}风速:{realtime['windpower']}级更新时间:{realtime['reporttime']}"""def format_forecast(data: dict) -> str:"""格式化未来天气预报数据为可读文本"""forecasts = []for day_data in data["forecasts"][0]["casts"]:  # 高德预报数据在casts数组中forecast = f"""日期:{day_data['date']}白天天气:{day_data['dayweather']}夜间天气:{day_data['nightweather']}最高温:{day_data['daytemp']}°C最低温:{day_data['nighttemp']}°C风向:{day_data['daywind']}风力:{day_data['daypower']}级"""forecasts.append(forecast)return "\n---\n".join(forecasts)@mcp.tool()
async def get_realtime_weather(city_adcode: str) -> str:"""获取中国城市实时天气(通过高德地图API)Args:city_adcode: 城市编码(如北京110000,上海310000,可通过高德城市编码表查询)"""print("正在获取实时天气...get_realtime_weather")data = await make_amap_request(endpoint="/weather/weatherInfo",params={"city": city_adcode,"extensions": "base",},  # extensions=base表示实时天气)if not data or not data.get("lives"):return "无法获取实时天气数据(请检查城市编码或API Key)"return format_realtime_weather(data)@mcp.tool()
async def get_forecast(city_adcode: str) -> str:"""获取中国城市未来多天天气预报(通过高德地图API)Args:city_adcode: 城市编码(如北京110000,上海310000,可通过高德城市编码表查询)"""data = await make_amap_request(endpoint="/weather/weatherInfo",params={"city": city_adcode, "extensions": "all"},  # extensions=all表示预报)if not data or not data.get("forecasts"):return "无法获取天气预报数据(请检查城市编码或API Key)"return format_forecast(data)if __name__ == "__main__":# 启动MCP服务器(通过标准输入输出通信)mcp.run(transport="stdio")
 AI编辑器配置MCP
{"mcpServers": {"weather": {"command": "uv","args": ["--directory","C:\\soft\\test\\nnw-mcp-server-demo","run","weather.py"]}}
}

配置成功后是这样的  

测试mcp server

正常调用实时工具

正常调用预报工具

 到这mcp server demo就开发结束啦 ~

2.2 MCP Client 开发

配置项

DASHSCOPE_API_KEY = "sk-xxx"  # 阿里云DashScope平台申请的API Key
TONGYI_MODEL = "qwen-plus"    # 使用的通义千问模型

环境搭建 

同上面mcp server的一致 

 创建 client.py

代码流程参考MCP官方案例:https://modelcontextprotocol.io/quickstart/client

import asyncio
import json
import sys
from typing import Optional
from contextlib import AsyncExitStack
import httpx# ClientSession:MCP客户端会话;StdioServerParameters:标准输入输出服务端配置参数
from mcp import ClientSession, StdioServerParameters# 标准输入输出客户端,用于通过控制台与服务端通信(适用于本地进程间通信)
from mcp.client.stdio import stdio_clientDASHSCOPE_API_KEY = "sk-090303xxxxxxxxxxxxxxxx"  # 阿里云DashScope平台API Key
TONGYI_MODEL = "qwen-plus"  # 使用qwen-plus模型class MCPClient:"""MCP客户端,用于连接服务端并通过LLM调用工具"""def __init__(self):"""初始化MCP客户端和通义千问API连接"""# MCP客户端会话(用于与服务端通信,初始为None,连接后赋值)self.session: Optional[ClientSession] = None# 异步资源栈(用于自动管理后续创建的异步上下文,如连接、会话等,确保资源正确释放)self.exit_stack = AsyncExitStack()self.tools = {}  # 存储可用工具的字典self.tool_descriptions = []  # LLM可用的工具描述async def connect_to_server(self, server_script_path: str):"""连接到MCP服务端Args:server_script_path: 服务端脚本路径(.py或.js)"""# 验证脚本类型is_python = server_script_path.endswith(".py")is_js = server_script_path.endswith(".js")if not (is_python or is_js):raise ValueError("服务端脚本必须是.py或.js文件")# 确定执行命令command = "python" if is_python else "node"server_params = StdioServerParameters(command=command, args=[server_script_path], env=None)# 建立与服务端的连接print(f"正在连接到服务端: {server_script_path}...")stdio_transport = await self.exit_stack.enter_async_context(stdio_client(server_params))self.stdio, self.write = stdio_transportself.session = await self.exit_stack.enter_async_context(ClientSession(self.stdio, self.write))await self.session.initialize()# 获取并展示可用工具response = await self.session.list_tools()self.tools = {tool.name: tool for tool in response.tools}# 美化工具列表输出print("\n✓ 已成功连接到服务端")print("🔧 可用工具:")for tool_name in self.tools:print(f"  - {tool_name}")# 为LLM准备工具描述self.tool_descriptions = [{"name": tool.name,"parameters": (json.loads(tool.inputSchema)if isinstance(tool.inputSchema, str)else tool.inputSchema),"description": tool.description,}for tool in response.tools]async def call_tool(self, tool_name: str, parameters: dict) -> str:"""调用MCP服务端的工具Args:tool_name: 工具名称parameters: 工具参数Returns:工具执行结果"""if tool_name not in self.tools:raise ValueError(f"未知工具: {tool_name}")# 调用前显示进度print(f"🚀 正在调用工具: {tool_name}")print(f"🔧 参数: {json.dumps(parameters, ensure_ascii=False, indent=2)}")result = await self.session.call_tool(tool_name, parameters)return result.contentasync def query_llm(self, user_query: str) -> dict:"""调用通义千问API解析用户查询为工具调用指令Args:user_query: 用户查询内容Returns:解析后的工具调用指令字典"""print(f"🤖 正在分析查询: {user_query}")api_url = "https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions"# 系统提示词:指导模型使用工具system_prompt = f"""你是一个天气信息查询助手。用户的问题将由以下工具回答:{json.dumps(self.tool_descriptions, indent=2, ensure_ascii=False)}请直接生成JSON格式的工具调用指令,不要包含其他解释。示例:用户输入:"上海明天的天气如何?" → {{"name": "get_forecast", "parameters": {{"city_adcode": "310000"}}}}""".strip()headers = {"Authorization": f"Bearer {DASHSCOPE_API_KEY}","Content-Type": "application/json",}payload = {"model": TONGYI_MODEL,"messages": [{"role": "system", "content": system_prompt},{"role": "user", "content": user_query},],"parameters": {"temperature": 0.1,  # 极低随机性"max_tokens": 128,  # 限制生成长度},}# 发送请求并处理响应async with httpx.AsyncClient() as client:print("🌐 正在请求LLM服务...")response = await client.post(api_url, headers=headers, json=payload)response.raise_for_status()result = response.json()tool_call = (result.get("choices", [{}])[0].get("message", {}).get("content", "{}"))try:print("✓ 成功获取工具调用指令")return json.loads(tool_call)except json.JSONDecodeError:print(f"⚠️ 无效的工具调用格式: {tool_call}")return Noneasync def process_query(self, user_query: str) -> str:"""处理用户查询,调用LLM并执行工具Args:user_query: 用户查询内容Returns:最终响应结果"""# 获取工具调用指令tool_call = await self.query_llm(user_query)if not tool_call or "name" not in tool_call or "parameters" not in tool_call:return "抱歉,无法理解您的查询。"tool_name = tool_call["name"]parameters = tool_call["parameters"]try:return await self.call_tool(tool_name, parameters)except Exception as e:return f"调用工具失败: {str(e)}"async def chat_loop(self):"""交互式聊天循环"""# 显示欢迎信息print("\n" + "=" * 30)print("🌦️ 天气查询助手")print("=" * 30)print("输入示例:北京明天天气如何?/ 北京今天天气怎么样?")print("输入'quit'、'退出'或'bye'结束对话")while True:try:query = input("\n查询: ").strip()if query.lower() in ["quit", "退出", "bye"]:print("👋 感谢使用,再见!")breakif not query:continueresponse = await self.process_query(query)# 美化结果输出print("\n" + "-" * 30)print("📋 查询结果:")print("-" * 30)print(response)print("-" * 30)except Exception as e:print(f"\n⚠️ 发生错误: {str(e)}")async def cleanup(self):"""清理资源"""print("🧹 正在清理资源...")await self.exit_stack.aclose()print("✓ 资源清理完成")async def main():"""程序入口点"""if len(sys.argv) < 2:print("使用方法: python client.py <服务端脚本路径>")sys.exit(1)print("🚀 天气查询助手启动中...")client = MCPClient()try:await client.connect_to_server(sys.argv[1])await client.chat_loop()finally:await client.cleanup()if __name__ == "__main__":asyncio.run(main())

2.3 整合测试

本地运行 python client.py weather.py

提问:合肥明天天气怎么样?

输入自然查询内容 就会去调用相应的工具  询问今天会去调用get_realtime_weather 询问明天预报类的则会去调用get_forecast

工具的调用流程

用户输入 → process_query → 调用query_llm获取工具调用指令(如get_forecast)

通过 MCP 协议向服务端发送指令,服务端执行具体工具逻辑(如调用天气 API)

服务端返回结果,客户端解析并展示

总结:

本文介绍了如何利用Trae编辑器与MCP协议,快速配置并开发基于高德地图API的定制化服务。通过具体的步骤指导,我们了解了从Trae环境搭建、MCP Server的配置到实际开发应用的全过程。此外,还探讨了MCP Server和Client的构建方法,以及如何使用Python进行本地测试和集成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/911658.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/911658.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【LLaMA-Factory 实战系列】三、命令行篇 - YAML 配置与高效微调 Qwen2.5-VL

【LLaMA-Factory 实战系列】三、命令行篇 - YAML 配置与高效微调 Qwen2.5-VL 1. 引言2. 为什么从 WebUI 转向命令行&#xff1f;3. 准备工作&#xff08;回顾&#xff09;4. 核心&#xff1a;创建并理解训练配置文件4.1 选择并复制基础模板4.2 逐一解析与修改配置文件4.3 参数详…

推荐:ToB销售B2B销售大客户营销大客户销售培训师培训讲师唐兴通讲销售技巧数字化销售销AI销售如何有效获取客户与业绩

站在AI浪潮之巅&#xff0c;重塑销售之魂 在AI时代&#xff0c;普通销售人员&#xff08;TOB、TOC&#xff09;除了传统的销售动作之外&#xff0c;还能做什么&#xff1f;怎么做&#xff1f; 这是《AI销冠》这本书想探讨的核心问题。 特别喜欢编辑老师总结的&#xff1a; 读者…

爬取小红书相关数据导入到excel

本期我们来进行实战,爬取小红书的相关数据导入到excel中,后续可进行些数据分析,今后或者已经在运营小红书的小伙伴应该比较喜欢这些数据。今天我们的主角是DrissionPage,相对于之前介绍的selenium省去了很多的配置,直接安装了就能使用。 DrissionPage 是一个基于 python …

c++面试题每日一学记录- C++对象模型与内存对齐深度原理详解

一、C++对象模型核心原理 1. 对象内存布局基础原理 设计哲学: 零开销原则:不为未使用的特性付出代价(如无虚函数则无vptr)兼容性:C结构体在C++中保持相同内存布局多态支持:通过虚函数表实现运行时动态绑定内存布局实现机制: 编译器处理步骤: 成员排列:严格按声明顺序…

Kafka 监控与调优实战指南(二)

五、Kafka 性能问题剖析 5.1 消息丢失 消息丢失是 Kafka 使用过程中较为严重的问题&#xff0c;可能由多种原因导致。在生产者端&#xff0c;如果配置不当&#xff0c;比如将acks参数设置为0&#xff0c;生产者发送消息后不会等待 Kafka broker 的确认&#xff0c;就继续发送…

Linux下SVN报错:Unable to connect to a repository at URL ‘svn://XXX‘

一、问题描述 Linux下通过SVN执行提交&#xff08;commit&#xff09;操作时报错&#xff1a;Unable to connect to a repository at URL svn://XXX&#xff1a; 二、解决方法 导致该问题的一个可能原因是远程仓库的URL发生变化了&#xff0c;即svn服务器的ip变更了。这时可…

Modbus 扫描 从站号、波特率

下载链接&#xff1a;https://pan.quark.cn/s/533ceb8e397d 下载链接: https://pan.baidu.com/s/1PQHn-MwfzrWgF2UrXQDoGg 提取码: 1111

Docker 容器通信与数据持久化

目录 简介 一、Docker 容器通信 1. Docker 网络模式 2. Bridge 模式 3. Host 模式 4. Container 模式 5. Overlay 模式 6. 端口映射&#xff1a;容器与外部的桥梁 7. 容器互联&#xff1a;从 --link 到自定义网络 二、Docker 数据持久化 1. 数据卷&#xff1a;Docke…

【教学类-89-08】20250624新年篇05——元宵节灯笼2CM黏贴边(倒置和正立数字 )

背景需求&#xff1a; 【教学类-89-06】20250220新年篇05——元宵节灯笼2CM黏贴边&#xff08;3边形到50边形&#xff0c;一页1图、2图、4图&#xff0c;适合不同水平&#xff0c;适合不同阶段&#xff09;-CSDN博客文章浏览阅读1.6k次&#xff0c;点赞35次&#xff0c;收藏27…

【DB2】SQL0104N An unexpected token “OCTETS“ was found following “……

db2创建表时报标题的错误&#xff0c;建表语句如下 db2 "CREATE TABLE YS.TEST_1(ID VARCHAR(64 OCTETS))"去掉octets就好了 经过测试&#xff0c;在9.7版本报错&#xff0c;在10.5.11没问题&#xff0c;怀疑版本差异导致 在官网查找资料&#xff0c;应该是10.5才…

暴雨以信创委员会成员单位身份参与南京专题活动

6月19日&#xff0c;中国电子工业标准化技术协会信息技术应用创新工作委员会&#xff08;简称信创工委会&#xff09;联合南京市工业和信息化局共同举办的“智启未来&#xff1a;AI赋能信息技术应用创新办公新势力”专题活动在南京成功举办。南京市工业和信息化局副局长代吉上、…

基于keepalived、vip实现高可用nginx (centos)

基于keepalived、vip实现高可用nginx &#xff08;centos&#xff09; 1、安装keepalived yum install keepalived2、选同一局域网空置ip作vip 我这里测试是&#xff1a; 主&#xff1a;192.168.163.134 副&#xff1a;192.168.163.135 vip&#xff1a;192.168.163.1403、ke…

使用 launch 启动 rviz2 并加载机器人模型

视频资料&#xff1a;《ROS 2机器人开发从入门到实践》6.2.2 在RViz中显示机器人_哔哩哔哩_bilibili 1、创建工作空间 chapt6_ws/src&#xff0c;创建包 fishrobot_description ros2 create fishrobot_description --build-type ament_cmake --license Apache-2.0 2、创建机器…

华为云Flexus+DeepSeek征文 | 基于CCE容器的AI Agent高可用部署架构与弹性扩容实践

华为云FlexusDeepSeek征文 | 基于CCE容器的AI Agent高可用部署架构与弹性扩容实践 &#x1f31f; 嗨&#xff0c;我是IRpickstars&#xff01; &#x1f30c; 总有一行代码&#xff0c;能点亮万千星辰。 &#x1f50d; 在技术的宇宙中&#xff0c;我愿做永不停歇的探索者。 …

Python学习Day41

学习来源&#xff1a;浙大疏锦行 知识回顾 数据增强卷积神经网络定义的写法batch归一化&#xff1a;调整一个批次的分布&#xff0c;常用与图像数据特征图&#xff1a;只有卷积操作输出的才叫特征图调度器&#xff1a;直接修改基础学习率 卷积操作常见流程如下&#xff1a; …

数组题解——最长回文子串【LeetCode】

5. 最长回文子串 一、向右拓展 算法思路 你用res记录当前找到的最长回文子串。每次遍历到s[i]时&#xff0c;尝试找到以s[i]结尾的、比当前res更长的回文子串。 先尝试长度为len(res)2&#xff08;即起点i-len(res)-1&#xff09;的子串&#xff0c;看是不是回文。如果不是&…

✨从零搭建 Ubuntu22.04 + Python3.11 + PyTorch2.5.1 GPU Docker 镜像并上传 Docker Hub

&#x1f680; 从零搭建 Ubuntu22.04 Python3.11 PyTorch2.5.1 GPU Docker 镜像并上传 Docker Hub 在 AI 项目开发中&#xff0c;构建统一的运行环境是一件非常重要的事情。使用 Docker 可以极大地提升部署效率、保证环境一致性。本文将手把手带你&#xff1a; ✅ 构建一个…

纪念抗战胜利知识答题pk小程序

纪念抗战胜利知识答题PK小程序通常有以下功能&#xff1a; 一、基础答题功能 题目展示&#xff1a;清晰呈现题目内容&#xff0c;支持文字、图片、音频或视频等多种形式的题目素材&#xff0c;且能按选择题、填空题、判断题等不同题型分类展示。答案提交与判断&#xff1a;用…

AI模型本质与学习范式解析

从统计学习&#xff08;也就是数学&#xff09;的角度来分析深度学习模型的本质。 频率派与贝叶斯派对模型本质理解的差异&#xff1a;前者认为学习参数估计&#xff0c;后者认为学习后验分布。不过这个问题下概率分布的视角更本质。 三个核心部分&#xff1a;任务类型分类&a…

【AI落地应用实战】Chaterm:重新定义终端操作的AI智能工具

目录 一、AI Agent 终端新范式二、Chaterm安装与基础功能体验2.1、源码安装与配置2.2、基础功能体验 三、Chaterm运维案例实践四、从 Chaterm 看智能终端工具的演进方向4.1 更低门槛&#xff1a;面向“非专业人员”的运维民主化4.2 更强扩展性&#xff1a;从工具到平台的演化 五…