首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏从头开始学习测试开发

    DSPy —— 用程序化方式优化提示与推理链的下一代 LLM 编程框架

    Generate、Predict)和自动优化器(如 BootstrapFewShot、MIPRO),让系统能根据任务指标(如准确率、F1)自动调整提示、示例甚至推理流程,实现“代码即提示,训练即优化”的范式跃迁 DSPy 会自动生成初始提示模板。 _5_Turbo(), task_model=dspy.Claude2()) optimized_rag = teleprompter.compile(MultiHopRAG(), trainset=devset LlamaIndex:范式差异 维度 LangChain / LlamaIndex DSPy 编程范式 命令式(Imperative) 声明式(Declarative) 提示管理 手工编写、硬编码 自动优化 结语 DSPy 代表了 LLM 编程的下一个范式:从写提示到写程序,从人工调参到自动优化。它不是否定提示工程,而是将其提升到工程化、可扩展的新高度。

    43010编辑于 2026-01-29
  • 来自专栏Reinvent Data Science

    Milvus 集成 DSPy:搭建高效 RAG Pipeline

    DSPy 提供七个内置模块以满足各种用途,包括 dspy.ReAct、dspy.ChainofThought、dspy.Predict、dspy.ProgramOfThought、dspy.ReAct、 一个典型的 DSPy 优化器需要三个输入: 您的 DSPy 程序:可以是单一模块(例如 dspy.Predict)或复杂的多模块程序。 一组训练输入:通常只需要 5 到 10 个示例。 一旦您定义了训练数据、模块和指标,优化器将优化 LLM 权重、prompt 指令和少数示例演示,以提高程序效率。 = dspy.OutputField(desc="often between 1 and 5 words") 我们简单描述了context和answer字段,以生成清晰的指南,帮助模型根据接收到的信息生成内容 = Evaluate(devset=devset, num_threads=1, display_progress=False, display_table=5) metric = dspy.evaluate.answer_exact_match

    1.3K10编辑于 2024-06-25
  • 来自专栏机器学习与统计学

    斯坦福NLP实验室重磅开源:DSPy,让大模型开发更简单,附代码

    DSPy: 编程而非提示工程的基础模型框架 DSPy是斯坦福大学自然语言处理实验室开发的一个开源框架,旨在为基础模型提供一种新的编程范式,取代传统的提示工程方法。 安装和使用 可以通过pip安装DSPy: pip install dspy-ai 实践示例 让我们通过两个简单的示例来展示DSPy的使用方法。 = dspy.OutputField(desc="often between 1 and 5 words") class RAG(dspy.Module): def __init__(self evaluate_on_hotpotqa = Evaluate(devset=devset, num_threads=1, display_progress=False, display_table=5) 结语 DSPy为基础模型应用开发提供了一种全新的范式,有望大幅提高开发效率和应用质量。通过上述示例,我们可以看到DSPy如何简化了复杂语言模型应用的开发过程。

    93610编辑于 2024-10-23
  • 来自专栏用户画像

    H5无插件范式

    过去,很多功能只能通过插件或者复杂的hack(本地绘图API、本地socket等)来实现,但是在HTML5中提供了对这些功能的原生支持。 插件的方式存在很多问题。 1、插件安装可能失败。 4、插件不容易与HTML文档的其他部分集成(因为插件边界、剪裁和通明度问题) H5可以直接用CSS和JavaScript的方式控制页面布局,不仅仅是提供了新元素支持新功能,更重要的是添加了对脚本和布局之间的原生交互能力 以H5中的canvas元素为例,可以轻松地在页面中画出对角线。

    38920发布于 2018-08-27
  • 来自专栏云云众生s

    告别人工提示,用DSPy编程

    = dspy.OutputField(desc="often between 1 and 5 words") 模块:LLM 行为的构建块 模块是预构建的组件,封装了特定的 LLM 行为或技术。 (metric=dspy.evaluate.answer_exact_match) DSPy 编译器:主编排器 DSPy 编译器是操作背后的核心。 使用 MyScaleDB 配置 DSPy 我们连接 DSPy 和 MyScaleDB,并配置 DSPy 默认使用我们的语言和检索模型。 = dspy.OutputField(desc="often between 1 and 5 words") 定义 RAG 模块 RAG 模块集成了检索和生成步骤。 # Retrieve relevant documents retrieve_relevant_docs = dspy.Retrieve(k=5) context = retrieve_relevant_docs

    76410编辑于 2024-07-12
  • 来自专栏AI大模型

    不,是时候重新思考AI工程范式

    人日资源消耗过度包装带来的性能损耗Agent调用延迟增加300%更令人担忧的是,某头部AI公司的工程效能报告显示:LangChain应用的平均启动时间达到17.3秒内存占用比裸API实现高出42%debug复杂度指数级增长三、新范式崛起 DSPy的革命(华盛顿大学新框架)# DSPy的声明式编程class QA(dspy.Module):def __init__(self):self.generate_answer = dspy.Predict "claude3":return claude3_apielif model_name == "gpt4-turbo":return gpt4_turbo五、未来战场:AI工程生态位的重构随着GPT-5、 真正的AI工程高手已不再争论框架优劣,而是深入理解:任何技术范式都只是实现业务价值的临时脚手架。那些正在默默采用轻量级组合、声明式编程和显式状态管理的团队,正以数倍效能构建着下一代智能应用。

    74510编辑于 2025-07-28
  • 来自专栏小七的各种胡思乱想

    DSPy论文串烧和代码示例

    Self-Improving Pipelines对流程进一步做了抽象和重构,提出了以三个核心模块为基础的prompt生成和优化框架Signature: 继承了pydantic的BaseModel,定义任务的范式 DSPy提供了一些Exact Match,Passage Match之类的指标,但其实自己定义指标最方便。只要和DSPy Metric的输入输出对齐即可。 并让模型进行有针对性的优化,称之为GenerateInstructionGivenAttempts,指令如下在0.7的temperature下,每一轮模型会基于上一轮的最优prompt生成breadth=5个新的 prompt_model=model , metric=choice_match, breadth=5, track_stats=True)kwargs = dict(num_threads=1, display_progress=True, display_table=5)

    1.7K61编辑于 2024-08-01
  • 来自专栏人工智能

    什么是人工智能领域的 dspy 框架

    DSPY 的工作机制DSPY 的基本架构通常由三个主要模块组成:数据获取与处理模块、模型构建与训练模块、以及收益优化与预测模块。1. DSPY 的优缺点分析优点高度数据驱动:DSPY 的优势之一在于它完全基于数据驱动,从而可以很好地捕捉复杂系统中的潜在关系。 DSPY 与传统 AI 系统的区别DSPY 与传统的 AI 系统相比,主要有以下几个显著的区别。首先,DSPY 强调数据驱动下的收益最大化,而传统 AI 系统更多关注模型预测的精度。 因此在实际应用中,DSPY 更适用于需要在复杂系统中进行持续调优的场景。其次,DSPY 系统中常常涉及到对动态数据的处理和实时预测,这意味着 DSPY 需要具备一定的实时响应能力。 DSPY 的未来发展与挑战随着数据采集与存储技术的不断发展,DSPY 也面临着新的发展机遇与挑战。在未来,DSPY 的发展可能主要集中在以下几个方向。

    84910编辑于 2024-12-20
  • 来自专栏掘金安东尼

    浅析优化文本提示技术 —— TextGrad

    本瓜前面的文章(感兴趣见:《求求你别学了:从 Prompt 到 RAG,从 RAG 到 DSPy》)有提到 DSPy 框架,通过管道化的方式用编程强化提示语,今天则介绍另外一个、也是来自于斯坦福大学研究人员推出的 TextGrad VS DSPy 先来从大的概念范围看看 TextGrad 与 DSPy 的对比: TextGrad: (1)将 LLM 文本反馈“反向传播”到各组件中,无需手动调整,实现优化复合系统; (2)DSPy 把 LM 调用表示为参数化模块,使用编译器优化这些模块组合,实现LM管道的系统化开发和优化。 (3)DSPy在数学文字题等任务上有超过25%和65%的性能提升。 (4)DSPy 用较小的LM(如T5和Llama2)可实现与专家编写的提示链或专有LM系统相媲美的性能。 核心组件 TextGrad 遵循 PyTorch 语法,好处就是灵活且易于使用。 小结 TextGrad 是一种通过文本反馈反向传播优化大模型系统的新范式DSPy 则专注于通过参数化模块和编译器优化实现LM管道的系统化开发和优化。

    1.3K10编辑于 2024-06-24
  • 来自专栏开源服务指南

    媒体管理的未来:Jellyfin 助你自如掌控音视频资源 | 开源日报 0904

    它支持多种机器学习建模范式,包括监督学习、市场动态建模和强化学习。该项目提供了完整的数据处理、模型训练和回测流程,并涵盖了量化投资中的各个环节:寻找 Alpha 信号、风险建模、组合优化和订单执行等。 系统完整性保护 (SIP)、FileVault2、im4m 安全启动与 Vaulting 功能 在非原生操作系统上进行恢复 OS、安全模式和单用户模式引导等功能 LSPosed/MagiskOnWSALocal[5] stanfordnlp/dspy[6] Stars: 2.0k License: MIT DSPy 是一个用于解决复杂任务的框架,结合了语言模型和检索模型的技术。 DSPy 还包括一个自动编译器,用于为大型语言模型生成高质量的提示。这个框架的主要功能和特点包括: 提供 Pythonic 模块,用于指导语言模型执行任务。

    77210编辑于 2023-09-14
  • 来自专栏全栈程序员必看

    第一范式、第二范式、第三范式、BC范式

    =宿舍,所以符合传递函数的要求; 1NF 一言以蔽之:“第一范式的数据表必须是二维数据表”,第一范式是指数据库的每一列都是不可分割的基本数据项,强调列的原子性,试题中某一属性不能拥有几个值。 比如数据库的电话号码属性里面不可以有固定电话和移动电话值,如下图: 说明:在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。 2NF 第二范式建立在第一范式的基础上,即满足第二范式一定满足第一范式,第二范式要求数据表每一个实例或者行必须被唯一标识。 3NF 若某一范式是第二范式,且每一个非主属性都不传递依赖于该范式的候选键,则称为第三范式,即不能存在:非主键列 A 依赖于非主键列 B,非主键列 B 依赖于主键的情况。 BCNF 在第三范式的基础上,数据库表中如果不存在任何字段对任一候选关键字段的传递函数依赖则符合第三范式

    1.1K20编辑于 2022-08-31
  • 来自专栏全栈程序员必看

    第一范式,第二范式,第三范式,BCNF范式理解

    第一范式、第二范式、第三范式 参考了https://www.zhihu.com/question/24696366 https://www.cnblogs.com/lca1826/p/6601395 第一范式 第一范式列不能再分。 第二范式 第二范式建立在第一范式的基础上,非主属性完全依赖于码。 简单说:消除部分依赖。 (什么是码?) 要是上面那张表符合第二范式。需要将表拆分为两张表。 =宿舍,所以符合传递函数的要求 第三范式 满足第二范式的条件下不存在传递函数依赖。 要满足第三范式,在分成两张表的时候第二张表还是有问题? 学号->系名,系名->系主任 传递依赖。 总结: 第一范式:简单说 列不能再分 第二范式:简单说 建立在第一范式基础上,消除部分依赖 第三范式:简单说 建立在第二范式基础上,消除传递依赖。

    1.5K30编辑于 2022-08-25
  • AI驱动安全攻防:腾讯云Superposition框架赋能自动化渗透测试

    Plan(生成固定执行序列、评估payload有效性)、Explore(含最大探索轮次控制、重复检测)、Exploit(漏洞利用)三模块,支持意图偏离管理“探索有效性检测(角色/意图保持)”; 技术范式 :采用DSPy(Programming—not prompting),通过编程调用工具而非提示驱动基础模型,结合Programmatic Tool Calling Flow(代码执行工具、容器脚本暂停恢复机制 腾讯云安全技术领先性 选择腾讯云的核心优势在于技术确定性与工程化落地能力: 独家框架:Superposition(云鼎实验室)实现探索-利用闭环,含意图偏离管理、探索有效性检测等独家策略; 范式创新 :DSPy(Programming-not-prompting)突破传统提示工程局限,长亭科技刘金钊团队验证其“高效代理构建”价值; 工程化支撑:Multi-Agent协作、并行执行、上下文工程模块经

    21910编辑于 2026-04-06
  • 来自专栏全栈程序员必看

    MySQL (4) 第一范式 第二范式 第三范式 BC范式

    第一范式 第一范式:所有属性都是不可分割的原子值。 也就是每个属性都是不可再分的。 如果我们要在RDBMS中表现表中的数据,就得设计为下图的形式: ---- 第二范式(2NF) 第二范式:在第一范式的基础上,要求非主属性都要和码有完全依赖关系 所谓完全依赖是指不能存在仅依赖码一部分的属性 (区别于部分依赖) 如果有哪些数据只和码的一部份有关的话,它就不符合第二范式。同时可以得出:如果一个数据表的码只有单一一个字段的话,它就一定符合第二范式(前提是该数据表符合第一范式)。 ——无改进 所以我们要使用第三范式。 ---- 第三范式(3NF) 第三范式:任何非主属性不依赖于其它非主属性。 3NF在2NF的基础之上,消除了非主属性对于码的传递函数依赖。 ---- BC范式 BC范式在 3NF 的基础上消除主属性对于码的部分与传递函数依赖。

    1.5K10编辑于 2022-08-31
  • AI驱动多智能体安全框架:提升渗透测试效率与精准度

    构建AI多智能体协同框架 腾讯云安全推出AI驱动多智能体框架(Multi-Agent Framework),以Programming—not prompting为核心范式(基于DSPy Foundation 腾讯安全技术领先性解析 选择腾讯云安全的核心在于技术架构的确定性与场景适配性: 范式创新:基于DSPy(Programming—not prompting—Foundation Models)构建中间表示

    28320编辑于 2026-04-05
  • 来自专栏全栈程序员必看

    第一范式、第二范式、第三范式、BCNF范式详解

    第三范式(3NF) 4. BCNF范式 5. 小结 6. 参考文献 ---- 0. 数据库范式也分为1NF,2NF,3NF,BCNF,4NF,5NF。一般在我们设计关系型数据库的时候,最多考虑到BCNF就够。 图5表示了模式分解以后的新的函数依赖关系 图5 表4表示了模式分解以后新的数据 表4 (这里还涉及到一个如何进行模式分解才是正确的知识点,先不介绍了) 现在我们来看一下,进行同样的操作 新的函数依赖关系如图6 图6 新的数据表如表55 现在我们来看一下,进行同样的操作,是否还存在着之前的那些问题? 删除某个系中所有的学生记录 该系的信息不会丢失。 5.

    7K11编辑于 2022-08-31
  • 来自专栏全栈程序员必看

    数据库第一范式 第二范式 第三范式 BC 范式

    数据库范式也分为1NF,2NF,3NF,BCNF,4NF,5NF。一般在我们设计关系型数据库的时候,最多考虑到BCNF就够。 符合高一级范式的设计,必定符合低一级范式,例如符合2NF的关系模式,必定符合1NF。 接下来就对每一级范式进行一下解释,首先是第一范式(1NF)。 符合1NF的关系(你可以理解为数据表。 图5表示了模式分解以后的新的函数依赖关系 图5 表4表示了模式分解以后新的数据 表4 (这里还涉及到一个如何进行模式分解才是正确的知识点,先不介绍了) 现在我们来看一下,进行同样的操作,是否还存在着之前的那些问题 新的函数依赖关系如图6 图6 新的数据表如表55 现在我们来看一下,进行同样的操作,是否还存在着之前的那些问题? 删除某个系中所有的学生记录 该系的信息不会丢失。 那么关系模式 仓库(仓库名,管理员,物品名,数量) 属于哪一级范式

    62530编辑于 2022-08-31
  • 来自专栏编程创造城市

    关系型数据库范式分析,第一范式、第二范式、第三范式、BC范式、第四范式、第五范式

    本期文字教程,老刘和大家一起分析分享一下关系型数据库中常用的几个范式。 第一范式:(字段不能重复且不能分解) 我们也叫1NF。 第三范式:(消除非主键的传递关系) 我们也叫3NF。这个范式的前提必须先满足第二范式的要求。第三范式主要是要看表中的非主键字段(列)与主键字段是否含有传递关系。什么叫是否有传递关系呢? BC范式:(消除主键内的传递关系) 这个范式也叫BCNF。这个范式的前提条件是要先满足第三范式的要求。在BC范式中,比起第三范式来说还多了一个主键内部传递关系的检查。 第五范式:(消除非候选码的表字段连接依赖) 这个范式我们也叫5NF。这个范式首先前提必须要满足4NF。第五范式是指关系模型R依赖均有R候选码所隐含,这是指在连接时,所连接的属性均为候选码。 这个是几近于完美的范式,对字段关系要求极高,但是可能会消耗数据库很大性能。这里不做举例了。主要强调一下,5NF主要就是表连接时注意,只能是候选码才能连接才可以。

    10.4K74发布于 2021-01-18
  • 来自专栏全栈程序员必看

    第一范式、第二范式、第三范式

    范式:英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的老祖宗)在上个世纪70年代提出关系数据库模型后总结出来的,范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法 目前有迹可寻的共有8种范式,依次是:1NF,2NF,3NF,BCNF,4NF,5NF,DKNF,6NF。通常所用到的只是前三个范式,即:第一范式(1NF),第二范式(2NF),第三范式(3NF)。 下面就简单介绍下这三个范式。 ◆ 第一范式(1NF):强调的是列的原子性,即列不能够再分成其他几列。 ◆ 第二范式(2NF):首先是 1NF,另外包含两部分内容,一是表必须有一个主键;二是没有包含在主键中的列必须完全依赖于主键,而不能只依赖于主键的一部分。 第二范式(2NF)和第三范式(3NF)的概念很容易混淆,区分它们的关键点在于,2NF:非主键列是否完全依赖于主键,还是依赖于主键的一部分;3NF:非主键列是直接依赖于主键,还是直接依赖于非主键列。

    3.4K30编辑于 2022-09-07
  • 来自专栏全栈程序员必看

    数据库的范式(第一范式,第二范式,第三范式,BCNF范式)「建议收藏」

    2.范式(NF) 范式:符合某一种级别的关系模式的集合,简而言之就数据库表设计的标准级别,范式有1NF,2NF,3NF,BCNF,4NF等,通常高级别的范式包含低级别的范式。 数据库的设计一般到BCNF即可,有时候为了性能要就也会 2.1 1范式(1NF) 1范式:关系中的表的属性不可再分割。 2.2 2范式(2NF) 2范式:消除非主属性对码的部分函数依赖。 函数依赖:简单的说,如果对于每个x属性或属性组都有对应的确切的y值与之对应,则称Y函数依赖于x。 2.3 3范式(3NF) 3范式:消除非主属性对码的传递函数依赖 传递函数依赖: 一个关系R(U),X,Y,Z为属性集U上的子集,其中存在X→Y和Y→Z,但Y不决定X,即 Y! 2.4 BCNF范式(BCNF) BCNF范式:消除主属性之间的间接函数依赖和传递函数依赖。 3.总结 一般我们数据库设计到3范式或BCNF范式即可,但是在实际项目中总是在性能和扩展性中做取舍。

    1.7K10编辑于 2022-07-31
领券