测试AI代理工程师--SKAPA
目标: 修复现有代码,完成AI代理,开发前端,实现MCP服务器和电报机器人(天气数据、数据库、API、前端、可连接到ChatGPT或Claude的MCP)。MCP必须公开 至少3个工具 允许查询数据库(通过API)以获得 任何地点的实时天气信息.
堆栈: Python·FastAPI·SQLite·LLM API(Claude ou OpenAI)·MCP·Telegram Bot API
渲染: 这一切都是在Git上完成的 向分支机构的拉取请求 main 存储库。PR必须包含:
- QCM :文件
INSTRUCTIONS_QCM.md已完成(答案、理由、备选方案3.3和3.8)。 - 方法论 :如PR或
INSTRUCTIONS_QCM.md. - 应用程序的URL
- 前端URL
- API的URL
- L'URL du MCP
- 特工“Alertes Intelligentes”
没有通过zip或电子邮件呈现:文档完成+代码完成+同一拉取请求中提供的链接 main.
代理“智能警报”-机器人电报世界天气
概念
连接到的对话AI代理 电报 这使得讨论天气成为可能 世界各地 实时。该代理依赖于本项目中已经存在的天气API(开放天气)和SQLite数据库。
功能
- 自然对话 :用户写入以下类型的消息: *“东京的天气怎么样?”* 或 *“明天纽约的预测”* 代理人用自然语言回答。
- 个性化警报 :用户配置阈值(*“如果巴黎气温降至0摄氏度以下,请通知我。”*, *“马赛温度>35°C时发出警报”*)的。代理持续监控并在超过阈值时发送电报通知。
- 历史和趋势 :代理查询SQLite数据库以显示给定时间段内的温度变化(*“向我展示里昂7天的趋势”*).
计划架构
Utilisateur Telegram
│
▼
Bot Telegram (python-telegram-bot)
│
▼
Agent IA (LLM — parsing intention + génération réponse)
│
├──► API FastAPI existante (/weather/fetch, /weather/location, /weather/range)
│
├──► Open-Meteo Geocoding API (nom de ville → lat/lon)
│
└──► Base SQLite (historique, alertes utilisateurs, préférences)堆叠技术
| 组件 | 技术 |
|---|---|
| 机器人电报 | python-telegram-bot |
| 天气API | 开放天气(已集成) |
| Géocodage | Open-Meteo地理编码API |
| 数据库 | SQLite(已到位) |
| 调度程序alertes | APScheduler (定期检查阈值) |
| 代理IA | 通过MCP或API调用的LLM(Claude,OpenAI) |
| Docker(API容器+机器人容器) |
交互示例
👤 Utilisateur : "Météo à Barcelone ?"
🤖 Agent : "Actuellement à Barcelone : 18°C, ciel dégagé.
Prévisions : 20°C demain, 16°C mercredi.
Veux-tu que je crée une alerte pour cette ville ?"
👤 Utilisateur : "Oui, préviens-moi si ça descend sous 10°C"
🤖 Agent : "Alerte créée : je te préviendrai dès que la
température à Barcelone passe sous 10°C."
👤 Utilisateur : "Comparaison Paris vs Toulouse cette semaine ?"
🤖 Agent : "Paris : 8°C → 12°C (tendance hausse)
Toulouse : 11°C → 15°C (tendance hausse)
Toulouse reste ~3°C plus chaud que Paris cette semaine."代码练习
| 文件 | 练习 | 描述 |
|---|---|---|
question_3_3_A.py | 3.3.a | 改进的系统提示和RAG上下文注入 |
question_3_3_B.py | 3.3.b | 智能块功能(~500个代币、重叠、尊重短语) |
question_3_3_C.py | 3.3.C | 终点 POST /agent/evaluate 评估代理的质量 |
question_3_8.py | 3.8 | 知识库分析脚本(源统计、短块、空) |
注: 独自一人 变体 应解决问题3.3(A、B或C可选)。
预期的渲染
Tout via 拉取请求vers main.见 INSTRUCTIONS_QCM.md 有关完整的详细信息。
| 宜居 | 描述 |
|---|---|
| QCM | INSTRUCTIONS_QCM.md 完成(5部分,35+问题) |
| 后端修复 | 已识别并修复的错误和安全漏洞(单独提交) |
| 前端 | 功能性web界面(天气、聊天代理、数据) |
| MCP服务器 | 3+工具 app/mcp/server.py,可连接克劳德桌面 |
| 机器人电报 | 天气对话代理 app/bot/ |
| 练习3.3 | 您选择的变体(A、B或C) |
| 练习3.8 | 分析脚本 question_3_8.py |
| 部署 | 可在线访问的应用程序(Railway、Render、Fly.io等) |
| 说明PR | Mémethodologie+URL(应用程序、前端、API、MCP) |
