首页 > 其他分享 >tanuki.py学习资料汇总 - 轻松构建更快更便宜的LLM应用

tanuki.py学习资料汇总 - 轻松构建更快更便宜的LLM应用

时间:2024-09-11 15:54:07浏览次数:13  
标签:函数 sentiment py LLM tanuki classify

tanuki.py

tanuki.py简介

tanuki.py是一个用于轻松构建LLM驱动应用的Python库,它能让LLM应用随着使用变得更快更便宜。其主要特点包括:

  • 易于集成 - 只需几秒钟即可将LLM增强功能添加到任何工作流程中
  • 类型感知 - 确保LLM输出符合函数的类型约束,避免意外问题
  • 对齐输出 - 通过简单的断言语句对齐patched函数的行为
  • 降低成本和延迟 - 使用次数越多,成本可降低90%,延迟可降低80%
  • 支持主流模型 - 支持OpenAI、Amazon Bedrock、Together AI等流行模型
  • RAG支持 - 无缝获取embedding输出,用于下游RAG实现

快速入门

  1. 安装tanuki.py:
pip install tanuki.py
  1. 设置OpenAI API密钥:
export OPENAI_API_KEY=sk-...
  1. 创建一个简单的tanuki.py函数:
import tanuki

@tanuki.patch
def classify_sentiment(msg: str) -> Optional[Literal['Good', 'Bad']]:
    """Classifies a message from the user into Good, Bad or None."""

@tanuki.align
def align_classify_sentiment():
    assert classify_sentiment("I love you") == 'Good'
    assert classify_sentiment("I hate you") == 'Bad'
    assert not classify_sentiment("People from Phoenix are called Phoenicians")

if __name__ == "__main__":
    align_classify_sentiment()
    print(classify_sentiment("I like you")) # Good
    print(classify_sentiment("Apples might be red")) # None

学习资源

  1. 官方文档 - 详细介绍了tanuki.py的使用方法和概念。

  2. 示例代码 - 提供了多个使用tanuki.py的实际案例,包括:

    • 客户请求重要性分类器
    • 冒犯性语言分类功能
    • 食品评论应用
    • 生成符合数据库模式的数据
  3. AWS Bedrock配置指南 - 如何配置和使用AWS Bedrock模型。

  4. Together AI配置指南 - 如何配置和使用Together AI模型。

  5. 嵌入支持文档 - 介绍了如何使用tanuki.py的嵌入功能支持RAG实现。

  6. 简单的ToDo List应用示例 - 一个使用tanuki.py构建的简单ToDo List应用。

  7. Discord社区 - 加入Discord社区,与其他开发者交流学习。

核心概念

  1. 类型化输出 tanuki.py支持类型化参数和输出,允许您声明patched函数可以返回的数据类型规则。这可以防止LLM的冗长或不一致输出。

  2. 测试驱动对齐 通过编写封装tanuki-patched函数预期行为的测试,您可以声明函数必须满足的契约。这使您能够验证期望、捕获行为细微差别并迭代开发。

  3. 扩展和微调 随着数据点数量的增加,tanuki.py会自动为每个patched函数蒸馏较小的模型,从而降低成本和延迟。

常见问题

tanuki.py的FAQ部分回答了许多常见问题,包括:

  • tanuki.py与其他框架(如LangChain)的比较
  • 如何处理幻觉和偏见
  • 蒸馏如何影响性能
  • tanuki.py不适合哪些场景

通过深入学习这些资源,您将能够充分利用tanuki.py来构建更快、更便宜、更可靠的LLM应用。随着使用次数的增加,您的应用将变得更加高效和经济。

项目链接:www.dongaigc.com/a/tanuki-py-learning-resources-fast-cheap-llm

https://www.dongaigc.com/a/tanuki-py-learning-resources-fast-cheap-llm

www.dongaigc.com/p/Tanuki/tanuki.py

https://www.dongaigc.com/p/Tanuki/tanuki.py

标签:函数,sentiment,py,LLM,tanuki,classify
From: https://blog.csdn.net/Nifc666/article/details/142105910

相关文章

  • 【Python机器学习】循环神经网络(RNN)——循环网络的记忆功能
    文档中的词很少是完全独立的,它们的出现会影响文档中的其他词或者收到文档中其他词的影响:Thestolencarspedintothearena.Theclowncarspedintothearena.这两句话可能会产生两种完全不同的情感感受。这两个句子的形容词、名词、动词、介词短语结构式完全相同的,但......
  • python身份证二要素、三要素实名认证接口调用示例
    身份证二要素、三要素实名认证接口,实时快速核实身份信息是否真实有效,根据姓名、身份证号码核对身份信息是否一致,核验结果实时返回,不限性别、不限年龄,各类网站程序和APP均可接入。接口介绍:实时快速核实身份信息是否真实有效,不限性别、不限年龄。更新时间:实时文件......
  • 使用python进行PostgreSQL 数据库连接
    使用python进行PostgreSQL数据库连接PostgreSQL数据库是最常用的关系型数据库之一,最吸引人的一点是它作为开源数据库且具有可拓展性,能够提供丰富的应用。运用python可以很简单的建立PostgreSQL数据库连接,其中最受欢迎的就是psycopg。1.安装psycopg2Psycopy是针对python的Po......
  • python基本数据类型
    python基本数据类型标准数据类型Python3中常见的数据类型有:Number(数字)String(字符串)bool(布尔类型)List(列表)Tuple(元组)Set(集合)Dictionary(字典)Python3的六个标准数据类型中:不可变数据(3个):Number(数字)、String(字符串)、Tuple(元组);可变数据(3个):List(列表)、Dictionary(字典)、S......
  • 【Python脚本】自定义Payload的ICMP报文发送
    原创Evan运维小站OpsStationICMP(InternetControlMessageProtocol)是一种网络层协议,主要用于在IP主机、网关之间传递控制消息。通常,ICMP报文具有固定的格式,并用于发送错误报告或与网络诊断相关的消息。标准ICMP报文不包含用户定义的payload内容。但是,你可以通过发送一个"......
  • Python 全局变量使用指南
    Python中优雅使用全局变量的指南在Python编程中,全局变量的使用和管理是非常重要的,尤其是在需要共享配置信息、常量或需要在多个模块之间共享数据时。相比其他语言,Python通过模块级别变量、数据类、环境变量等方式为我们提供了多种实现全局变量的途径。以下将详细介绍几......
  • Scrapy设置动态代理IP—提升爬虫效率与成功率的秘诀
    在进行网络数据采集时,爬虫代理IP是一个不可或缺的工具。通过动态代理IP,Scrapy爬虫可以有效避免被目标网站封禁,提高数据采集的成功率和效率。本文将详细介绍如何在Scrapy中设置动态代理IP,让你的爬虫更加智能和高效。什么是动态代理IP?动态代理IP是指在数据采集过程中,定期更换使......
  • # yyds干货盘点 # 原始数据都一样,为啥Pyecharts做出来的图一个是彩色的,另一个是黑白的
    大家好,我是Python进阶者。前言前几天在铂金交流群里,有个叫【小朋友】的粉丝在Python交流群里问了一道关于Pyecharts可视化的问题,初步一看觉得很简单,实际上确实是有难度的,问题如下。乍一看,这个问题不知道他在说什么,看完代码之后,我才明白他的意思。一、思路    下面是他的代码,首......
  • Python系列(11)- 使用 Pipenv 搭建 Django + Rest Framework 开发环境
    Django是一个开放源代码的Web应用框架,用Python语言编写的。采用了MTV的框架模式,即模型Model,模版Template和视图View。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。Django:http://www.djangoproject.comGitHub:htt......
  • 原始数据都一样,为啥Pyecharts做出来的图一个是彩色的,另一个是黑白的?
    大家好,我是Python进阶者。前言前几天在铂金交流群里,有个叫【小朋友】的粉丝在Python交流群里问了一道关于Pyecharts可视化的问题,初步一看觉得很简单,实际上确实是有难度的,问题如下。乍一看,这个问题不知道他在说什么,看完代码之后,我才明白他的意思。一、思路下面是他的代码,首先......