#Python

3周前
#BestBlogs RAG 技巧与底层代码剖析 | 阿里云开发者 使用 Python 基础库从零实现 RAG 内核,深入剖析文本分块、语义搜索及上下文增强技巧。 摘要: 本文旨在通过手写代码的方式帮助读者深入理解 RAG 的工作原理,避免过度依赖现有框架。 文章首先展示了使用 Python 基础库实现简易 RAG 系统的过程,包括数据导入、固定长度文本分块、Embedding 创建和基于余弦相似度的语义搜索,并提供了代码示例。接着,详细介绍了基于语义的文本分块方法,对比了其与传统方法的优势,并阐述了百分位法、标准差法、四分位距法等切分点判定策略,同样给出了基于语义分块的代码实现。最后,文章引入并实现了“上下文增强检索”技巧,即在检索到最相关文本块的同时包含其前后相邻块,以提供更丰富的上下文信息给语言模型,从而提升回答质量。通过代码实践,文章有效地揭示了 RAG 的核心逻辑和关键优化方向。 主要内容: 1. 手写 RAG 核心模块有助于深入理解其工作原理。 -- 通过仅使用 Python 基础库和常用科学计算库实现 RAG 流程,能更清晰地掌握从数据处理到响应生成的底层逻辑。 2. 语义分块比固定长度分块更能捕获完整语义单元。 -- 基于句子间语义相似度进行智能切分,能有效避免语义割裂,提高检索到的上下文质量和相关性。 3. 上下文增强检索能为 LLM 提供更全面的信息。 -- 在检索结果中包含相关文本块的邻近内容,能丰富大模型获得的背景知识,减少因信息不完整导致的回答偏差。 文章链接:
3周前
搞 AI 的不写 Python?现在真不是笑话了。 最近越来越明显——在 AI 应用领域,TypeScript 正在一点点蚕食 Python 的霸主地位。 过去你说搞 AI 的,十个有九个写 Python,模型、数据处理、训练、部署,一条龙服务。 但现在越来越多场景变了:不是“训练 AI”,而是“用 AI”。 用 AI 干嘛?做产品、做 UI、做交互代理、搞插件、接入 SDK… 这些一落地,就全是 TypeScript 的主场。 说几个已经发生的和正在发生的事情: 1️⃣ LangChain 和 LangGraph 现在已经有了 TypeScript 支持,能直接跑在浏览器、Node.js、Cloudflare Workers 上。写 agent、接工具、搞多轮对话,在 TS 世界里越来越丝滑。 2️⃣ OpenAI 的 Assistants API 也不给 Python 独宠,今天还贴心地发布了 TS 版本的 Agents SDK。 3️⃣ JetBrains 的统计显示,TypeScript 使用率从 2017 年的 12% 涨到 2024 年的 37%。在企业里,TS 已经不是前端才用的语言,而是你要做 AI 产品就得学的语言。 这些不是趋势预测,而是已经在开发现场发生的事实。 技术栈正在迁移。你要构建个 AI Copilot、Web 插件、对话助手,Python 行不通。 TypeScript 天然和 UI、API、用户互动贴得更近,类型安全又稳,越来越多团队把它当默认选项。 而且别忘了,过去十年,前端其实一直在默默吞噬后端的地盘。 这波 AI 应用化,刚好又给了前端一记重拳,原来你以为是写页面的,结果人家直接搞起 AI Copilot 了。 再看看 Python 那边,Streamlit、Gradio 这些本该承担AI UI 桥梁的工具,一个不争气,一个半死不活,完全没接住这波热潮。 我看了看趋势,有点慌了……我要去学学 TS 了。 以前是“全栈前端”说说而已,现在是真的“前端越来越吃香了”。 但要冷静两秒(防杠专区): 1️⃣ Python 依然是 AI 训练和科研的王者,PyTorch、TensorFlow、scikit-learn 这些生态太厚实了,训练大模型你离不开它。 2️⃣ TS 在底层 AI 能力上还没那么能打,GPU 加速、模型优化这些,暂时还得靠 Python 打底。 但是,现在 AIGC 丰富的是应用的生态,相比做模型的人,做 AI 应用的人数万倍了吧。 最后,非要有个定位的话,Python 搞理论和模型,TypeScript卷体验和交付。 TS 正在从应用这一层切入,把 AI 真正推向了每个 Web 页面的角落。 爆款 AI 产品,正在越来越多的全栈 TS 了。