【GitHub每日速递 251027】14.3k star! 告别AI开发痛点!Parlant让大模型指令遵循不再是难题

原文:https://mp.weixin.qq.com/s/KjAS4gDjAzWtmHkBLoo64Q

告别AI开发痛点!Parlant让大模型指令遵循不再是难题

parlant 是一个专注于控制能力的LLM代理工具。简单讲,它让大语言模型像智能助手一样执行实际任务,快速部署到真实场景中。适用人群:开发者、自动化工程师、AI应用创业者。

项目地址:https://github.com/emcie-co/parlant

主要语言:Python

stars: 14.3k

https://github.com/emcie-co/parlant/blob/develop/docs/demo.gif?raw=true

项目概述

Parlant 是一个 AI 代理框架,旨在解决开发者在构建生产 AI 代理时遇到的痛点,确保大语言模型(LLM)遵循指令,让 AI 代理能按照业务需求准确运行。

核心功能

  • 规则确保遵循:与传统依赖系统提示不同,Parlant 可通过创建准则来确保 LLM 遵循规则。例如,当客户询问退款问题时,能依据准则检查订单状态。
  • 多方面定制功能
    • Journeys:定义清晰的客户旅程,让代理在每个步骤做出相应响应。
    • Behavioral Guidelines:用自然语言轻松构建代理行为,系统会根据上下文匹配相关元素。
    • Tool Use:将外部 API、数据获取器或后端服务与特定交互事件关联。
    • Domain Adaptation:教授代理特定领域的术语,以生成个性化响应。
    • Canned Responses:使用响应模板消除幻觉,保证回复风格的一致性。
    • Explainability:了解每个准则匹配和遵循的原因及时间。

优势

  • 可靠的规则遵循:避免传统方法中 LLM 忽略系统提示、产生幻觉响应等问题,确保代理在实际应用中按规则运行。
  • 易于使用:使用自然语言定义规则和控制代理行为,降低开发难度。
  • 可扩展性:通过添加准则来扩展代理功能,而非依赖复杂的提示工程。
  • 生产就绪:从一开始就适用于生产环境,减少调试和优化的时间。
  • 企业级特性:具备会话旅程引导、动态准则匹配、可靠工具集成、会话分析、迭代优化、内置防护栏、React 聊天 UI 组件以及全解释性等功能。

代码示例

以下是一个简单的天气助手示例,展示了如何使用 Parlant 创建一个具有规则遵循行为的 AI 代理:

复制代码
import parlant.sdk as p

@p.tool
async def get_weather(context: p.ToolContext, city: str) -> p.ToolResult:
    # 这里应实现你的天气 API 逻辑
    return p.ToolResult(f"Sunny, 72°F in {city}")

@p.tool
async def get_datetime(context: p.ToolContext) -> p.ToolResult:
    from datetime import datetime
    return p.ToolResult(datetime.now())

async def main():
    async with p.Server() as server:
        agent = await server.create_agent(
            name="WeatherBot",
            description="Helpful weather assistant"
        )

        await agent.create_variable(name="current-datetime", tool=get_datetime)

        await agent.create_guideline(
            condition="User asks about weather",
            action="Get current weather and provide a friendly response with suggestions",
            tools=[get_weather]
        )

if __name__ == "__main__":
    import asyncio
    asyncio.run(main())

应用场景

  • 金融服务:适用于合规优先的设计,具备内置风险管理功能。
  • 医疗保健:可创建符合 HIPAA 标准的代理,保护患者数据。
  • 电子商务:实现大规模客户服务和订单处理自动化。
  • 法律科技:提供精确的法律指导和文档审查协助。

快速开始

通过 pip install parlant 即可安装,按照上述代码示例进行配置,就能快速启动一个具有规则遵循行为的 AI 代理。

惊!基于DWT - DCT - SVD的盲水印技术,抗多种攻击还能多形式嵌入!

blind_watermark 是一个实现盲水印嵌入与提取的 Python 工具库。简单讲,它能将水印信息隐藏在图片中,且提取水印时不需要原始图片对比,保护版权更便捷。适用人群:开发者、数字内容创作者、需要版权保护的技术人员。

项目地址:https://github.com/guofei9987/blind_watermark

主要语言:Python

stars: 8k

仓库概述

blind-watermark 是一个基于DWT - DCT - SVD算法实现盲水印功能的Python库。盲水印是指在提取水印时不需要原始图像,只需要带水印的图像就能提取出嵌入的水印信息。

核心功能

  • 水印嵌入:支持将文本、图像、比特数组等不同形式的水印信息嵌入到图像中。
  • 水印提取:可以从带有水印的图像中提取出之前嵌入的水印信息。
  • 抗攻击能力:对旋转、裁剪、遮挡、缩放、椒盐噪声、亮度调整等常见的图像攻击方式具有较好的鲁棒性,能在图像经过这些攻击后仍准确提取水印。
  • 并发处理 :支持多进程并发处理,可通过 processes 参数指定进程数量,默认使用所有可用进程。

代码架构特点

  • 提供了简单易用的Python类 WaterMark,通过该类的方法可以方便地实现水印的读取、嵌入和提取操作。
  • 代码结构清晰,在 examples 目录下提供了多种使用示例,包括嵌入文本、图像和比特数组的示例代码,方便用户参考。

安装方式

  • 稳定版本 :使用 pip install blind-watermark 命令进行安装。
  • 开发版本 :先通过 git clone git@github.com:guofei9987/blind_watermark.git 克隆仓库,然后进入仓库目录 cd blind_watermark,最后使用 pip install . 进行安装。

使用方法

命令行使用

  • 嵌入水印blind_watermark --embed --pwd 1234 examples/pic/ori_img.jpeg "watermark text" examples/output/embedded.png
  • 提取水印blind_watermark --extract --pwd 1234 --wm_shape 111 examples/output/embedded.png

Python代码使用

  • 嵌入文本水印示例

    from blind_watermark import WaterMark

    bwm1 = WaterMark(password_img=1, password_wm=1)
    bwm1.read_img('pic/ori_img.jpg')
    wm = '@guofei9987 开源万岁!'
    bwm1.read_wm(wm, mode='str')
    bwm1.embed('output/embedded.png')
    len_wm = len(bwm1.wm_bit)
    print('Put down the length of wm_bit {len_wm}'.format(len_wm=len_wm))

  • 提取文本水印示例

    bwm1 = WaterMark(password_img=1, password_wm=1)
    wm_extract = bwm1.extract('output/embedded.png', wm_shape=len_wm, mode='str')
    print(wm_extract)

优势

  • 鲁棒性强:能有效抵抗多种常见的图像攻击,保证水印信息的可提取性。
  • 使用方便:提供了命令行和Python代码两种使用方式,且代码示例丰富,降低了用户的使用门槛。
  • 跨平台支持:支持Windows、Linux和macOS等多种操作系统。

应用场景

  • 版权保护:在图片中嵌入版权信息,当图片被非法使用时,可以通过提取水印来证明版权归属。
  • 数据溯源:在图像中嵌入特定的标识信息,方便对图像的来源和传播路径进行追溯。
  • 信息隐藏:将一些敏感信息以水印的形式隐藏在图像中,实现信息的秘密传递。

相关项目

文档资料

Rust语言打造Servo浏览器引擎,多平台搭建指南大揭秘!

servo 是一个基于Rust开发的轻量级高性能浏览器引擎。简单讲,它能让开发者将网页技术轻松嵌入到自己的应用中,同时保证运行速度和稳定性。适用人群:系统开发者、浏览器技术研究者、Rust语言爱好者

项目地址:https://github.com/servo/servo

主要语言:Rust

stars: 32.8k

项目概述

Servo是一个用Rust语言编写的原型网络浏览器引擎,目前可在64位的macOS、Linux、Windows、OpenHarmony以及Android系统上进行开发。该项目欢迎所有人贡献代码。

核心功能

作为浏览器引擎,Servo的核心功能是解析和渲染网页,它能够处理HTML、CSS、JavaScript等网页技术,将网页内容正确地展示给用户。

优势

  • 使用Rust语言:Rust语言具有内存安全、并发性能好等特点,这使得Servo在性能和安全性上有较好的表现。
  • 多平台支持:支持多种主流操作系统和新兴的OpenHarmony系统,具有广泛的适用性。
  • 社区开放:欢迎所有人贡献代码,有利于项目的快速发展和完善。

可能的应用场景

  • 开发新型浏览器:开发者可以基于Servo引擎开发具有特色功能的浏览器。
  • 嵌入式设备:由于其多平台支持,可用于在嵌入式设备上实现网页浏览功能。

文档与交流

  • 文档 :可以查看Servo Book获取详细的文档说明。
  • 新闻和指南 :访问servo.org获取项目的新闻和指南。

构建说明

不同操作系统的构建步骤有所不同:

  • macOS
    • 下载并安装Xcodebrew
    • 安装uvcurl -LsSf https://astral.sh/uv/install.sh | sh
    • 安装rustupcurl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    • 重启shell确保cargo可用。
    • 安装其他依赖:./mach bootstrap
    • 构建servoshell:./mach build
  • Linux
    • 安装curl,不同发行版安装命令不同:
      • Arch:sudo pacman -S --needed curl
      • Debian、Ubuntu:sudo apt install curl
      • Fedora:sudo dnf install curl
      • Gentoo:sudo emerge net-misc/curl
    • 安装uvcurl -LsSf https://astral.sh/uv/install.sh | sh
    • 安装rustupcurl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    • 重启shell确保cargo可用。
    • 安装其他依赖:./mach bootstrap
    • 构建servoshell:./mach build
  • Windows
    • 下载uvchocorustup,选择"Quick install via the Visual Studio Community installer"。
    • 在Visual Studio Installer中确保安装特定组件。
    • 重启shell确保cargo可用。
    • 安装其他依赖:.\mach bootstrap
    • 构建servoshell:.\mach build
  • Android
    • 设置环境变量ANDROID_SDK_ROOTANDROID_NDK_ROOT
    • 安装最新的Android命令行工具
    • 运行命令安装必要组件。
    • 按照对应平台的构建说明进行操作。
  • OpenHarmony
    • 按照对应平台的说明准备环境。
    • 根据目标发行版设置不同的环境变量。
    • 参考[Building for OpenHarmony]的详细说明。
    • 通过-flavor=<default|harmonyos>修改目标发行版。
相关推荐
猴子吃桃_Q4 天前
【GitHub每日速递 251023】46.1k star, 1.2B参数逆袭!MinerU2.5成最牛文档解析多模态大模型
github每日速递
猴子吃桃_Q5 天前
【GitHub每日速递 251022】81.2k star, Bun:替代 Node.js 的全栈 JavaScript 神器,快速上手攻略来了!
github每日速递
猴子吃桃_Q6 天前
【GitHub每日速递 251021】一键将全新Arch安装变身超美现代Web开发系统!Omarchy太神了
github每日速递
猴子吃桃_Q12 天前
【GitHub每日速递 251015】爆火, 20k star!小智 AI 聊天机器人多端控制+70 多个开源硬件支持,大模型应用新玩法
github每日速递
猴子吃桃_Q13 天前
【GitHub每日速递 251014】Claude Code:用自然语言命令让编码快到飞起!
github每日速递
猴子吃桃_Q14 天前
【GitHub每日速递 251013】SurfSense:可定制AI研究神器,连接多源知识,功能超丰富!
github每日速递
猴子吃桃_Q16 天前
【GitHub每日速递 251011】无需注册!本地开源AI应用构建器Dyad,跨平台速下载!
github每日速递
猴子吃桃_Q17 天前
【GitHub每日速递 251010】Zen MCP:一键 orchestrate 多 AI 模型,代码开发协作新革命!
github每日速递
猴子吃桃_Q18 天前
【GitHub每日速递 251009】AI时代必备!Stagehand浏览器自动化框架解锁高效新玩法
github每日速递