【由DeepSeek辅助编写】
MCP Run Python 是由 PydanticAI 提供的 MCP 服务器,能够在安全、隔离的沙盒环境中执行 Python 代码。它基于 Pyodide 和 Deno 技术栈,通过 WebAssembly 实现代码隔离,确保主机系统不受执行代码的影响。
【由DeepSeek辅助编写】
MCP Run Python 是由 PydanticAI 提供的 MCP 服务器,能够在安全、隔离的沙盒环境中执行 Python 代码。它基于 Pyodide 和 Deno 技术栈,通过 WebAssembly 实现代码隔离,确保主机系统不受执行代码的影响。
Introducing GitHub Copilot agent mode (preview)
[Llama 4]https://www.llama.com/docs/model-cards-and-prompt-formats/llama4_omni/)
Llama 4发布36小时差评如潮!匿名员工爆料拒绝署名技术报告
【本文由 DeepSeek 辅助完成】
在日常工作生活中,AI 已经成为我的得力助手。经过长期实践,我总结出一套高效使用 AI 的方法论,现在分享给大家。
对于开发者来说,AI 工具能显著提升工作效率。在遇到技术问题时,我会优先使用 Github Copilot Chat 这类专业工具来咨询问题,比如复杂的 SQL 查询语句或不熟悉的库的使用方法。相比通用聊天助手,这类针对开发场景优化的工具给出的建议更加精准。
代码补全方面,GitHub Copilot 是我的主力工具。我习惯将它的智能补全与 IDE 传统提示相结合,形成”AI+传统”的混合工作流,这样既能获得 AI 的创新建议,又能确保代码规范性。
当需要进行项目级别的修改时,比如实现新需求或重构代码,我会根据情况选择不同的工具。在 IDE 内进行多文件编辑时使用 Github Copilot Edit 功能,如果是在网页端修改 Github 项目,则会考虑是用 Copilot Workspace(示例 PR)。
处理日常信息时,我主要使用腾讯元宝和 Deepseek 这两个工具。腾讯元宝的特色在于可以检索公众号资源,并且支持在混元和 DeepSeek 模型间切换。需要注意的是,国内 AI 助手有时无法直接解析海外链接内容,这时我会先用 Jina AI Reader 将页面转为 Markdown 格式再处理。
内容创作方面,我采取多工具协同策略。通常会让腾讯元宝、ChatGPT 和 DeepSeek 分别生成内容,然后综合各家之长。这种”集思广益”的方式往往能产生更优质的内容。
不同专业领域都有对应的 AI 工具利器:
Deno 2.2 版本引入了原生的 OpenTelemetry 支持,使得在 Deno 应用中集成分布式追踪变得异常简单。本文将介绍如何使用 Deno 2.2 和 Hono 框架构建一个简单的微服务系统,并通过 OpenTelemetry 实现服务的可观测性。
我们构建了一个包含两个服务的简单系统:
gateway.ts):负责接收客户端请求,并将其路由到相应的服务。weather.ts):提供天气信息查询功能。此外,我们还实现了一个中间件 (TraceRoute.ts) 和一个模拟的第三方 API 调用 (thirdApi.ts),用于演示如何在服务中进行追踪。
gateway.ts)1 | import { Hono } from "@hono/hono"; |
weather.ts)1 | import { Hono } from "@hono/hono"; |
(由 DeepSeek 辅助翻译)
(警告,这是一篇长文。我有点写嗨了。)
经过一年时间,在许多客户项目中尝试使用 uv,这个由 Astral 推出的新 Python 项目管理工具,我看到了它的优点和不足。
我的结论是:如果你的情况允许,总是先尝试 uv。如果不行,再退回到其他工具。
它是帕累托解决方案,因为比起费劲去弄清楚该用什么工具,uv 更容易上手,而且你很少会后悔。实际上,迁移到 uv 和从 uv 迁移回来的成本都很低,但它带来的价值却相当高。
虽然这篇文章会深入探讨为什么如此,但我们也会专门讨论什么时候你不想使用 uv。
不过,这篇文章并不是关于如何使用 uv 的教程。后续会有一篇专门的文章。
尽管我对 uv 充满热情,但我坚持认为,在没有看到它在各种工作场景中的表现之前,我不能轻易推荐它。
这是因为 Python 社区庞大且多样化。有学生、数据科学家、AI 开发者、Web 开发者、系统管理员、生物学家、地理学家、插件作者……他们可能在大学、政府机构、初创公司、军队、实验室或大公司工作。
他们的技能水平、经验、环境和约束各不相同,而工具的普适性越强,我就越能推荐它。
这与 PHP、JS、Java 或 Ruby 的情况非常不同。相对来说,很少有人用 Java 开发 X-plane 插件,用 Ruby 编写 GIS 脚本,用 JS 编写银行定价引擎,或用 PHP 作为最新 LLM 模型的主包装。这些语言虽然也能做到,但我看到 Python 的应用范围更广。
因为我是一名自由职业开发者,同时也是一名培训师,我经常在这些领域游走,而且我见过其他工具在这些场景中惨败的情况。pyenv、poetry、pipenv、pdm、pyflow、pipx、anaconda……
事实上,我的博客之所以开始受欢迎,是因为一篇文章:为什么不告诉人们“简单”地使用 pyenv、poetry、pipx 或 anaconda
所以我不想给人们虚假的希望,推荐一些只在我的小圈子里有效的东西,不幸的是,大多数极客都会这么做。
现在,我已经看到了 uv 的使用方式和它可能遇到的问题,我不仅可以告诉你应该使用它,还可以告诉你为什么。
当然,我也会告诉你什么时候不要使用它。
我反复强调过,Python 的引导过程是所有问题的根源。所谓引导,指的是安装 Python 本身,以及配置一个新项目,以便后续安装依赖或构建包。你之后遇到的许多问题(例如打包问题)实际上都源于此。
这是因为:
PATH、PYTHONPATH、糟糕的命名约定、在同一台机器上安装多个 Python 版本、Linux 上的可选包,以及 Python 作为系统依赖项,这些都为你提供了无数种搬起石头砸自己脚的方式。-m 和 py 在它们的使命中失败了。大多数人甚至不知道它们的存在。因此,一个好的 Python 项目管理工具应该具备以下特性:
PATH 和 PYTHONPATH 问题。pip 和 venv)与自身之间提供桥梁。(由DeepSeek R1辅助编写)
在实现基于 OpenAI 流式 API 的对话系统时,面临两个核心挑战:
传统同步处理模式存在致命缺陷,在客户端连接中断时会导致消息丢失:
1 | sequenceDiagram |
该方案通过异步任务和消息队列实现了 OpenAI API 流式响应的持久化和可靠传输。具体步骤如下:
该方案解决了长时操作风险和数据一致性问题,确保在客户端断连情况下数据不丢失,并支持断线重连和消息恢复。
(由 DeepSeek 辅助翻译)
你是否曾觉得你的 Python 代码可以更优雅或更高效?装饰器可能是你正在寻找的改变游戏规则的工具。装饰器可以看作是一种特殊的修饰符,它们包裹在你的函数周围,以最小的努力添加功能。
这些强大的工具可以改变你的函数和类的行为,而无需修改其核心代码。Python 自带了一些内置的装饰器,可以提高你的代码质量、可读性和性能。
在本文中,我们将介绍一些 Python 中最实用的内置装饰器,你可以在日常开发中使用它们——用于优化性能、创建更简洁的 API、减少样板代码等等。这些装饰器大多属于 Python 内置的 functools 模块。
▶️ 你可以在 GitHub 上找到所有代码。
@property 装饰器将方法转换为属性,允许你在保持干净接口的同时添加验证逻辑。
在这里,我们创建了一个 Temperature 类,其中包含 celsius 和 fahrenheit 属性,它们会自动处理单位之间的转换。当你设置温度时,它会执行验证以防止物理上不可能的值(低于绝对零度)。
1 | class Temperature: |
getter 和 setter 工作得非常顺畅,因此访问 temp.celsius 实际上会调用一个方法,但接口感觉就像一个常规属性。
输出:
1 | temp = Temperature() |
【由腾讯元宝辅助翻译】
文章来源:https://rafiqul.dev/blog/fastapi-deconstructed-anatomy-of-modern-asgi-framework
发布时间:2024-11-19T15:32:14.000Z
最近,我有机会在 PyCon APAC 2024 上深入探讨 FastAPI 的内部机制。演讲的标题是“FastAPI 解密:现代 ASGI 框架的剖析”。随后,我想到为什么不将这次演讲的内容写成文字呢?于是,我决定写一篇博客文章。以下就是这篇文章。
你可以在这里找到演讲的幻灯片:https://github.com/shopnilsazal/fastapi-deconstructed
注意: 为了更好地查看图表,请使用浅色模式阅读本文。
FastAPI 迅速成为 Python 开发者首选的框架之一,尤其是在需要高性能和开发者友好的 API 框架时。凭借对异步编程、依赖注入和自动生成 OpenAPI 文档的支持,FastAPI 以其速度和易用性脱颖而出。本文将分解 FastAPI 的核心组件,详细说明从 ASGI 和 Uvicorn 到 Starlette 和 Pydantic 的各个部分如何协同工作,构建出一个强大且现代的 Web 框架。
让我们从 FastAPI 应用程序的基础开始。在 FastAPI 中,一个“Hello World”示例非常简单。
1 | from fastapi import FastAPI |
通过这样一个简单的设置,FastAPI 可以处理以下任务:
我们可以通过以下方式运行这个应用程序:
1 | uvicorn main:app |
1 | hypercorn main:app |
1 | granian --interface asgi main:app |
可以看到,有多种方式可以运行我们的应用程序。关键在于,我们需要一个符合 ASGI 协议的服务器来运行应用程序。我们可以使用任何实现 ASGI 协议的服务器。但为了简单起见,在本文中我将使用 uvicorn 作为 ASGI 服务器的示例来解释相关内容。
FastAPI 的功能建立在多个强大的组件之上:
(本文由ChatGPT辅助编写)
来源: GitHub Copilot Chat Explained: The Life of a Prompt
GitHub Copilot 在 VS Code 中为开发者提供了强大的 AI 编程助手功能。它通过两种主要功能:内联建议和Copilot Chat,帮助开发者更高效地编写代码。在与 Copilot Chat 互动时,GitHub Copilot 会通过一系列复杂的步骤处理你的请求,从本地工作区扫描到与 OpenAI 语言模型的交互。以下是 GitHub Copilot 工作流的详细解析。
当开发者在 VS Code 中启动 Copilot Chat 并输入带有 @workspace 的问题时,Copilot 会进行以下处理: