Software 2.0

GenAI高级索引管道
RAG

GenAI高级索引管道

管理复杂的 GenAI 管道(尤其是具有多个模型和数据源的管道)可能是一项艰巨的任务。本文演示了如何将 LlamaIndex 与 Qdrant 和 MLflow 集成以简化 GenAI 应用程序的管理和部署。你将探索 MLflow 的功能(例如跟踪、模型打包和评估)如何实现 LlamaIndex 引擎的无缝处理。通过逐步实施,了解如何简化检索增强生成 (RAG) 工作流程、确保性能一致性并优化索引系统以实现更好的可扩展性和效率。 1、系统架构该架构集成了多个关键组件,以构建高效且可扩展的检索增强生成 (RAG) 系统。其核心是利用 LlamaIndex 进行索引和检索、利用 Qdrant 进行矢量存储和搜索以及利用 MLflow 在整个生命周期内注册、服务和跟踪所有组件的模型。这种设计旨在管理来自各种来源的大量数据,同时确保最终用户能够快速检索和准确推理。 管道从提取来自各种来源(例如 Web 文档、内部文档和数据库记录)的文档开始。这些文档由变更数据捕获

用LLM提取文档中的数据
APPLICATION

用LLM提取文档中的数据

近十年前,我在 LinkedIn 著名的数据标准化团队担任机器学习工程师。从我加入到离开,我们仍然无法自动读取一个人的个人资料,也无法在所有语言和地区可靠地了解某人的资历和职位。 乍一看,这很简单。“软件工程师”已经足够清楚了,对吧?如果一个人只写“助理”,那他可能是一个资历较低的零售员工(如果他们在沃尔玛工作)或者一个高级律师(如果他们在律师事务所工作)。但你可能知道这一点——你知道什么是 Java 新手吗?什么是 Freiwilliges Soziales Jahr?这不仅仅是了解德语——它翻译为“自愿社会年”。但什么是代表这个角色的良好标准头衔?如果你有一个已知的职位列表,你会把它映射到哪里? 我加入了 LinkedIn,我离开了 LinkedIn。我们取得了进展,但即使是最简单的常规文本——一个人的简历,也难以理解。 1、曾经困难的事情变得微不足道你可能不会惊讶地发现,对于像 GPT-4 这样的大模型来说,这个问题很简单: 对于 GPT 来说很容易但是等等,我们是一家公司,

商业文档多模态AI搜索
APPLICATION

商业文档多模态AI搜索

商业文档,例如复杂的报告、产品目录、设计文件、财务报表、技术手册和市场分析报告,通常包含多模态数据(文本以及图形、图表、地图、照片、信息图、图表和蓝图等视觉内容)。从这些文档中找到正确的信息需要对客户或公司员工提出的给定查询的文本和相关图像进行语义搜索。例如,公司的产品可能通过其标题、文本描述和图像来描述。同样,项目提案可能包括文本、说明预算分配的图表、显示地理覆盖范围的地图和过去项目的照片的组合。 准确快速地搜索多模态信息对于提高业务生产力非常重要。业务数据通常以文本和图像格式分布在各种来源中,这使得高效检索所有相关信息变得具有挑战性。虽然生成式 AI 方法(尤其是利用 LLM 的方法)增强了业务中的知识管理(例如,检索增强生成、图形 RAG 等),但它们在访问多模态、分散的数据方面面临限制。统一不同数据类型的方法允许用户使用自然语言提示查询各种格式。此功能可以使公司内的员工和管理层受益,并改善客户体验。它可以有多种用例,例如对相似主题进行聚类并发现主题趋势、构建推荐引擎、让客户参与更相关的内容、更快地访问信息以改进决策、提供特定于用户的搜索结果、增强用户交互以使其感觉更直观和自然,以及减少查找信息所花费的时间,仅举几例。

用AI设计REST API
APPLICATION

用AI设计REST API

自 2022 年 11 月推出 ChatGPT 以来,人工智能 (AI) 工具一直在科技界掀起波澜。这些工具的形式和功能差异很大,但其中有一个不变的点,那就是它们旨在改善用户的工作流程和效率。 但是,如果不了解这些工具的工作原理以及如何最好地与它们交互,那么有效使用这些工具可能会很困难。大多数这些工具——尤其是基于 OpenAI 的生成式预训练转换器 (GPT) 模型的工具。这些是大型语言模型 (LLM),其工作方式基本上是接受输入提示并根据训练过的数据预测哪些文本最有可能遵循该提示。 OpenAI 的模型已经接受了大量数据的训练,包括软件工程、编码和系统设计信息。因此,使用这些模型构建的 AI 可以回答您在这些领域和许多其他领域中的问题。 基于 OpenAI Codex 模型的 GitHub Copilot 和 ChatGPT 等 AI 工具被开发人员广泛用于帮助他们编写代码和解决技术问题。然而,由于上下文限制,这些工具在处理更大的软件设计挑战时存在局限性。 这正是 smol developer

开发第一个深度学习应用
DEEP LEARNING

开发第一个深度学习应用

我从事数据分析工作已经近十年了。我时不时地会使用机器学习技术从数据中获取见解,而且我习惯使用经典机器学习。 虽然我通过了一些关于神经网络和深度学习的 MOOC,但我从未在工作中使用过它们,而且这个领域对我来说似乎相当具有挑战性。我有这些偏见: 你需要学习很多东西才能开始使用深度学习:数学、不同的框架(我至少听说过其中三个:PyTorch、TensorFlow 和 Keras)和网络架构。需要大量数据集才能拟合模型。如果没有强大的计算机(它们还必须有 Nvidia GPU),就不可能获得不错的结果,因此很难进行设置。要启动和运行由机器学习驱动的服务,需要很多样板:你需要处理前端和后端。我认为分析的主要目标是帮助产品团队根据数据做出正确的决策。如今,神经网络绝对可以改善我们的分析,即 NLP 有助于从文本中获得更多见解。因此,我决定再次尝试利用深度学习的力量会很有帮助。 这就是我开始学习 Fast.AI 课程的方式(该课程于 2022 年初更新,因此我认为自 TDS 上之前的评测以来内容已经发生了变化)。我意识到使用深度学习解决您的任务并不那么困难。 本课程遵循自上而下的方法。因此,你从构建一个工作系统开始,然后才能深入了解所有必要的基础知识和细微差别。