
免责声明
本文主要针对practical questions那些旨在实现 的公司integrate AI into their traditional products and businesses with minimal effort and high-quality outcomes。示例包括将AI 聊天机器人用于零售、在医疗保健领域分析患者数据以及在教育平台中提供个性化体验。它不适用于研究型公司(例如 Mistral、Anthropic、ElevenLabs)或企业(例如 Google、Amazon、Microsoft)。
软技能的价值
一个值得信赖、渴望学习和实验的开发人员可以更有效地适应快速发展的人工智能格局。The ability to learn and pivot quickly is more valuable than proficiency in a specific framework or programming language.
如果您认识这样的开发人员,那么您很幸运——他们无需依赖这样的指南即可解决问题。
不断变化的人工智能格局:从 NLP 到 LLM 和多模式模型。
以前,解决特定的 NLP 问题需要专门的工具和以下领域的深厚专业知识:Sentiment Analysis, Spam Detection, Topic Classification, Named Entity Recognition, Text Summarization, Translation, Duplicate Detection, Recommendation Systems, Intent Detection, Grammar Correction, Audio/Image Recognition。
如今,随着大型语言模型 (LLM) 和多模态模型的出现,许多此类任务可以得到更高效、更全面的解决。The focus has shifted from building custom models/pipelines to applying pre-trained models to real-world use cases.
避免过度设计
在构建您的第一个产品或 MVP 时,简单性应该是首要考虑的因素。如果您不确定从哪里开始,请从简单的解决方案开始。
例如,如果您正在构建一个使用量有限的 MVP(例如,每天 10 个客户支持请求),而有人建议训练BERT 或 ModernBERT 模型,在本地托管它并管理整个设置,那么这可能是过度设计。您将投入更多时间,但如果没有处理 1,000 RPS 的规模或专门的技术团队来维护系统,那么这不是一个实用的方法。
Getting started with conversational chatbots no longer requires an in-depth understanding of NLP concepts比如仅编码器模型与解码器模型。打个比方:开发大多数业务应用程序时,您不需要编写汇编代码。相反,可以使用nowadays you can rely on high-level languages, frameworks,甚至是无代码/低代码解决方案来有效地解决业务问题。
面试时要讨论的话题
从业务问题到实施。
每个主题还包括指向专业资源的链接,以供深入探索
数据集管理
处理数据通常是 AI 开发中最具挑战性的方面。它对于微调和评估至关重要。关键主题包括:
预处理:清理和准备原始数据以供训练。这包括转换、组合来自多个来源的数据以及在保留相关信息的同时降低维度。开发人员还应了解训练、验证和测试集等概念:
训练集:您的教科书和练习问题(您从中积极学习)。
验证集:与练习题不同的练习测试(您可以使用这些测试来衡量您的理解并确定需要改进的领域,并相应地调整您的学习方法)。
测试集:实际考试(这是对您的知识的最终、看不见的评估)。
标记和注释:标记文本中的实体(例如,人、组织、位置)、注释评论中的情绪(积极、消极、中性)以及其他微调模型的关键任务。
工具:用于探索、可视化和注释的工具。
数据管道和工作流:自动化、数据源、团队职责。
安全和隐私:加密、匿名化、假名化和访问控制,确保数据安全和法规合规。
版本控制
AI 代理架构
考虑应用程序所需的控制级别和自定义逻辑:您希望 LLM 自主做出决策,还是与传统字节码编程逻辑协同工作?然后根据您的特定要求选择框架或方法:
低代码代理构建器(例如 n8n、Langflow)
多智能体系统(例如 CrewAI、Autogen)。
多参与者系统(例如,LangGraph)。
针对特定用例定制的架构(例如语义内核)。
流式传输可提供更具动态性和响应速度的用户体验,但需要谨慎实施,以确保所有系统组件都支持流式传输功能。另一方面,消息传递更易于调试和故障排除,但与流式传输相比,用户体验可能不够流畅。
内存和状态管理
有效的聊天机器人内存管理涉及平衡精度和召回率,同时考虑准确性、延迟和成本。原理很简单:"Garbage In, Garbage Out."最终目标是为代理配备exactly what is needed—no more, no less。
短期记忆(对话主题)
消息缓冲:保留最后 N 条消息或特定时间窗口以维持对话上下文。
总结:浓缩之前的交互以保留相关性而不会使系统变得过于复杂。
会话超时:定义会话何时过期(例如,30 分钟不活动后)。
工具历史记录:确定是否应将与外部工具的交互包含在对话历史记录中。
状态传递:确保代理或模块之间的无缝状态传输。
实体存储:捕获并更新与对话相关的实体、事实和 ID。
更新时间:决定何时以及如何进行内存更新。
长期记忆
多样化的存储:利用各种存储解决方案有效地检索相关信息。
更新机制:实施强大的流程,用新数据更新长期记忆。
少量提示:使用存储的对话作为动态提示的上下文。
数据屏蔽:确保敏感信息得到适当屏蔽或匿名化。
基于上下文的指令:根据具体用例或场景定制记忆行为。
存储解决方案
SQL 数据库:最适合结构化数据和简单的预定义查询。
矢量数据库:最适合存储嵌入和执行相似性搜索。
文档数据库:适合非结构化数据,例如对话历史记录和灵活的模式。
图形数据库:非常适合表示和查询数据内的复杂关系。
RAG、嵌入和向量存储
深入讨论的技术话题。
嵌入维度:细节捕捉和计算效率之间的平衡。
稀疏与密集:稀疏嵌入用于离散特征;密集嵌入用于语义关系。
模型选择:用于一般任务的预训练模型(例如 BERT、GPT);用于专门领域的微调模型。
语言支持:覆盖所有目标语言;为不太常见的语言提供额外的训练数据。
输入类型:根据聊天机器人的需求嵌入文本、非文本数据或两者。
矢量存储:可扩展、高效的数据库,具有元数据集成,可增强检索功能。
数据检索:使用各种代理、方法和工作流程实现有效的数据访问。
重新排序和过滤:重新排序、过滤和范围界定技术以优化结果并提高相关性。
摄取工作流程:无缝数据摄取和转换以进行嵌入和存储准备。
质量保证:定期微调检索过程以保持准确性。
大型数据集:用于大量数据处理的文档分块和相关性排名。
嵌入更新:定期刷新嵌入以确保相关性。
集成
是的,我们的目标是在大多数情况下用令牌替换字节码。但是,与外部系统的集成仍然是最耗时的任务之一,因此也需要讨论。
API:REST、gRPC、GraphQL,用于与 AI 模型进行标准化输入/输出交互。
Webhooks:系统之间的实时、事件驱动的通信。
双向集成:AI 实时发送和检索相关数据(例如,聊天机器人访问 CRM 数据)。
数据同步:通过队列或管道提供一致、最新的数据。
重试和回退:使用重试机制和默认响应进行故障管理。
错误处理:输入验证、错误日志记录和调试警报。
性能优化:批量 API 调用和缓存以减少延迟。
低代码平台:例如 Zapier,用于实现工作流自动化。
数据集成工具:Airbyte、Apache Kafka 用于流媒体和事件处理。
身份验证:Api 密钥、OAuth2、双因素。
加密:保险库、协议、密钥。
模型
在深入研究快速工程之前,选择适合您需求的模型至关重要:
开源:该模型是专有的还是开源的?
模态:支持的输入/输出类型(例如文本、图像、音频)。
批处理:在后台进行经济高效的处理(例如数小时)。
缓存:支持响应重用和优化。
微调:支持和简化。
成本:定价结构和可承受性。
上下文长度:每个输入/输出支持的最大令牌数。
SDK 框架:开发人员工具和 API 的可用性。
生态系统:与库、插件或平台的兼容性。
扩展和吞吐量:限制和配额。
延迟:平均响应时间(毫秒、秒或分钟:o1 vs gemini flash)。
内置工具:推理、代码解释或搜索等功能。
Every week, a new model emerges that surpasses all previous ones. So, just open Twitter (x.com) and follow OpenAI, Gemini, Anthropic, Mistral, Hugging Face, LLaMA, DeepSeek, Qwen, Gemma, and Phi.
提示
一切都取决于个人经验和应用技巧。法学硕士是非确定性的,这意味着类似的提示可能会产生不同的结果。
优先考虑长篇数据:将详细的上下文放在开头,将说明和示例放在底部。
提示链接:将任务分解为几个步骤(例如,提取 → 转换 → 分析 → 可视化)。
准确性:每一步都得到充分关注。
清晰度:简单的任务=清晰的输出。
可追溯性:轻松发现并解决问题。
思路链:鼓励逐步推理。
多重提示:提供多个示例以便更好地学习。
采用角色:指定模型的角色以获得集中响应。
使用分隔符:清楚地分隔不同的输入部分。
提示缓存:重复使用提示以提高效率。
结构化输出:请求有组织的格式,如 JSON 或表格。
方向提示:添加提示、关键字或 JSON 等格式,以使 LLM 专注于所需问题。
ReAct 方法:将推理与行动结合起来解决问题。
安全/PII
保护客户数据的基本卫生措施:
通过删除或屏蔽敏感数据来最大限度地减少 PII。
尝试假名化技术。
监控访问和使用日志以发现未经授权的活动。
实施实时安全漏洞警报。
法学硕士评估
需要讨论的重大话题。
执行回归测试和跨不同模型的测试。
人工智能法官。
使用已建立的黄金标准数据集评估模型在实时环境(例如有用性)和离线环境中的性能。
您将使用哪些具体指标来衡量不同环境下的响应准确性(例如,,,
question answering)?summarizationdialogue如何平衡相互竞争的评估目标(例如,
accuracyvs.fluency,helpfulnessvs.harmlessness)?不同评估方法(人工评估、自动化指标、对抗性测试)的优点/缺点是什么?
你如何检测语境的丢失或轮次间的矛盾陈述?
效率和性能:您将使用哪些具体指标来衡量 LLM 效率,以及如何在生产中对其进行优化?考虑延迟、吞吐量和内存使用情况。
幻觉检测:你会使用哪些具体技术/工具来检测法学硕士中的幻觉?你如何区分事实错误、创造性解释和真正的幻觉?
人工评估:哪些具体标准可以指导人工评估人员评估 LLM 输出质量?您将如何确保评估者之间的可靠性并尽量减少主观偏见?
可观察性
第一步是认识到问题或幻觉的存在。然后,你需要找到根本原因,排除故障,并确保问题得到解决。
您的应用程序/框架应将所有必要信息发送到可观察性平台。这包括:
指标:性能和成本数据。
警报:针对性能问题或停机时间的自动警报。
日志和痕迹:帮助识别幻觉并分析提示和反应的差异。
比较可观察性平台、其 SDK、集成、附加功能和成本。
最后的想法
聊天机器人开发和 AI 代理开发不再仅仅涉及数学和 NLP。当今最好的 AI 开发人员是:
多才多艺的问题解决者:他们将商业意识与技术技能相结合,并且学习速度很快。
良好的沟通者:他们善于与他人合作,并且具有批判性思维。
实用技术专家:他们知道如何有效地使用现有的模型和工具。
使用提供的主题来确定您的候选人是否合适。祝你好运!

