Databricks生成式AI工程师第6课:框架与提示词实战

框架选型应匹配任务,利用AI Bridge统一集成,并通过丰富提示与迭代调整提升生成式AI应用效果。
本文探讨了构建生成式AI应用时的框架选型与提示工程方法。框架选择应基于任务需求:LangChain构建链,LangGraph和OpenAI Agents SDK构建智能体,LlamaIndex专注检索,DSPy自动优化提示。Databricks通过AI Bridge包提供统一集成层,让团队保留熟悉框架的同时替换组件。在提示丰富方面,应从用户问题中提取关键字段(如产品代码)、术语和意图,转化为检索过滤器和查询指令,减少模型猜测。提示调整应从基线开始,一次只改一个明确指令,当指令不足时添加少样本示例来同时控制长度、语气和格式。
框架选型:没有银弹,只有场景匹配
在构建生成式AI应用时,框架之争从未停歇。有人钟情于LangChain的模块化,有人坚持用纯Python保持轻量,还有人开始探索DSPy的自动化优化。Databricks的这节课程直接点明:选择框架的关键在于任务本身,而非追逐潮流。
LangChain提供构建块——提示模板、检索器、输出解析器——通过管道连接成链。LangGraph(同团队出品)将智能体建模为带状态、循环和分支的图,适合复杂工作流。OpenAI Agents SDK则是编写智能体循环的另一种流行方式,尤其当任务简单时,纯Python配合该SDK就足够,因为Databricks端点直接接受OpenAI请求格式。LlamaIndex专注于文档索引与检索,而DSPy则通过指标自动优化提示,而非手动调参。

与Databricks的集成:AI Bridge包
无论选择哪个框架,Databricks都通过AI Bridge集成包提供统一的连接层。安装对应框架的Databricks包(如LangChain、OpenAI包)后,你可以获得平台化的组件:Databricks上服务的聊天模型、AI搜索索引作为检索器、Unity Catalog函数作为工具、Genie智能体作为数据源。在LangChain中,聊天模型类直接指向服务端点,检索器类指向索引。团队可以保留熟悉的框架,同时替换组件而无需重写链条。MLflow的自动日志调用覆盖所有框架,确保 tracing 和评估不受框架选择影响。
DSPy 是斯坦福大学团队提出的编程化提示优化框架。与传统手动编写提示不同,DSPy 将提示的各个组成部分(指令、示例、推理步骤)抽象为可学习的模块,并允许开发者定义一个或多个评估指标(如准确率、F1)。随后,DSPy 的优化器(如 BootstrapFewShot、MIPRO)会自动搜索提示模板和少样本示例的最佳组合,以最大化该指标。这相当于把提示工程从“手工艺”转变为“可优化的参数搜索”问题,特别适合有明确评测数据、且手动调参成本高的场景。
AI Bridge 是 Databricks 提供的一组集成包,旨在将主流 LLM 应用框架(LangChain、LlamaIndex、OpenAI SDK 等)与 Databricks 平台上的模型服务、向量检索、函数调用等能力无缝连接。其核心价值在于标准化接口:开发者无需改动框架的编程范式,只需将框架中的模型客户端、检索器等组件替换为 AI Bridge 提供的 Databricks 对应实现,即可获得平台级别的安全、监控和治理。例如,LangChain 的 ChatDatabricks 类直接指向 Databricks 服务端点,DatabricksVectorSearch 则封装 AI 搜索索引为检索器。
丰富提示词:从问题中挖掘信号
用户的问题往往包含超出字面意义的线索。课程以Copperline客户问及CX450耳机配对问题为例:助手却返回了其他型号的页面。解决之道在于拆解问题的关键字段(产品代码、订单号)、关键术语和意图(配对、保修、退货),并将它们转化为检索增强。
产品代码成为搜索的元数据过滤器,订单号触发订单查询,意图则选择适合的指令或示例。你还可以改写模糊问题为更清晰的搜索查询,或展开手册中拼写出的缩写。每一步都在为模型添加它原本需要猜测的上下文。

快速检查:利用问题中的产品代码
客户写道:“我的CX450在最近升级后无法配对。”助手搜索所有手册,经常回答其他型号。最佳改进是什么?答案是提取产品代码作为关键字段,过滤搜索,只召回正确的手册。选项B(用更大模型处理相同混合页面)和选项C(在提示中塞入所有手册)都未解决根本问题,选项D(将工作推给客户)则忽略了用户已经指明产品。

调整响应:从基线到目标输出
提示工程的迭代需要方法论。先建立基线提示,在真实问题上运行,记录输出与目标的差异——太长、太模糊、语气不对或没有来源。然后一次只修复一个问题,使用明确指令,如“用三句话回答”“引用手册页码”“保持友好平实的语气”。
当指令不够时,添加理想答案的少样本示例,同时展示长度、语气和格式。保留每个版本的提示,以便在同一组问题上比较新答案与基线。课程最后一个检查:答案正确但冗长技术化,客户想要简短友好的回复。添加“简洁”指令有帮助,接下来应该做什么?答案是添加理想答案的少样本示例,因为示例能同时传达指令无法言明的长度和语气。

少样本示例(Few-shot Examples) 是在提示中直接提供几个“输入-期望输出”的范例,让模型通过模式匹配理解任务要求。与纯指令(如“请简洁回答”)相比,示例能同时传递长度、语气、格式和内容结构等多维度信息,尤其适合指令难以精确描述的隐性要求。在提示工程迭代中,当明确指令无法完全纠正输出偏差时,添加 2-3 个高质量示例通常是最有效的下一步。注意示例应覆盖典型场景,并避免与当前问题过度相似导致过拟合。
要点回顾与下一课预告
框架选择应服务于任务:LangChain构建链,LangGraph和OpenAI Agents SDK构建智能体,LlamaIndex专注检索,DSPy优化提示。Databricks AI Bridge包连接它们到服务模型、AI搜索、Unity Catalog函数和Genie。通过关键字段、术语和意图丰富提示,利用过滤器、查询和指令。从基线开始,一次一改,用明确指令调整响应,指令不足时添加少样本示例。下一课将讨论模型选择。
相关推荐

AI Agent构建便宜,但运行一万次成本你算过吗?
AI Agent构建成本低,但大规模运行的真实成本常被忽略。本文基于Reddit开发者观察,分析SimplAI、Agentforce、Copilot Studio、CrewAI等平台按动作、对话、积分、工作流计费的差异,给出以业务流程为单位、计入失败重试、区分平台费与模型费的三个成本评估维度。

拒绝AI垃圾:一份"无AI Slop"宣言
AIE演讲者联合提出"无AI垃圾宣言",呼吁抵制低质AI生成内容泛滥。本文解读AI Slop的定义、行业焦虑来源,以及对内容创作者的实际启示。

《谢谢你的爱》英文版走红B站:经典情歌的跨文化演绎
B站热传的《谢谢你的爱》英文版《I'll give you all my love》,通过重新填词诠释“给予全部的爱”的主题。本文分析其歌词情感表达、跨文化改编策略以及与中文原版的情感逻辑差异,探讨经典华语歌曲英文改编的传播价值。