当前位置: 首页 > news >正文

crewai框架第三方API使用官方RAG工具(pdf,csv,json)

最近在研究调用官方的工具,但官方文档的说明是在是太少了,后来在一个视频里看到了如何配置,记录一下

以PDF RAG Search工具举例,官方文档对于自定义模型的说明如下:

默认情况下,该工具使用 OpenAI 进行嵌入和总结。要自定义模型,可以使用配置字典,如下所示:

tool = PDFSearchTool(config=dict(llm=dict(provider="ollama", # or google, openai, anthropic, llama2, ...config=dict(model="llama2",# temperature=0.5,# top_p=1,# stream=true,),),embedder=dict(provider="google", # or openai, ollama, ...config=dict(model="models/embedding-001",task_type="retrieval_document",# title="Embeddings",),),)
)

但是这个的前提是使用的官方openai的API,如果要改成第三方API的,配置应该如下:

from crewai_tools import PDFSearchTool# 自定义大模型配置
pdf_tool = PDFSearchTool(config=dict(llm=dict(provider="openai",config=dict(base_url="https://xxxxxxx/v1",api_key="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",model="gpt-4o"),),embedder=dict(provider="openai",config=dict(api_base="https://xxxxxxx/v1",api_key="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",model="text-embedding-3-small"),),)
)

其中,gpt-4otext-embedding-3-small都是购买的第三方API里的模型名称

在这里插入图片描述
如果想用本地模型,配置如下:

from crewai_tools import PDFSearchToolpdf_tool = PDFSearchTool(config=dict(llm=dict(provider="openai",config=dict(# Ollama deepseek-r1:8bbase_url="http://localhost:11434/v1",model="deepseek-r1:8b"),),embedder=dict(provider="openai",config=dict(# 文本嵌入模型 bge-m3api_base="http://localhost:11434/v1",model="bge-m3:latest"),),)
)

下面是一个可以跑通的例子:

from crewai_tools import PDFSearchTool
from dotenv import load_dotenv
import osload_dotenv() # 加载环境变量# 自定义大模型配置
tool = PDFSearchTool(config=dict(llm=dict(provider="openai",config=dict(base_url=os.getenv("OPENAI_API_BASE"),api_key=os.getenv("OPENAI_API_KEY"),model=os.getenv("OPENAI_MODEL_NAME")),),embedder=dict(provider="openai",config=dict(api_base=os.getenv("OPENAI_API_BASE"),api_key=os.getenv("OPENAI_API_KEY"),model="text-embedding-3-small"),),)
)# 运行工具,调用工具解析文件并检索内容
result = tool.run(pdf='../data/deepseek.pdf',# 其他工具使用的参数基本都是search_queryquery="介绍一下deepseek的核心驱技为优势"
)
print("result:",result)

在这里插入图片描述

注:

deepseek.pdf内容如下

DeepSeek:专注人工智能前沿的创新科技企业
一、企业概况
DeepSeek(深度求索)是一一以人人工智能技为核心驱动力的的创新科科技司,成立于 2023年成总部位 中国。司,聚焦 大模科研发、自然语言处理深NLP是、机器学习等前沿领域成致的 通过技为突破推力AI的普惠化应用。DeepSeek人"探)智能本质成赋能人类未来"核使命成专注 核企业和开发者提供高效、可靠的人工智能解决方案成覆盖金融、医疗、教育、智能制造等多个行业。立于人来成司,凭借技为实的和场景化落地能的成迅速立核AI赛道的新锐的量。
二、心驱技为优势
DeepSeek的心驱竞争的源 其自主研发的多模态大模科体系。司,构建了千亿参数规模的预训练模科框架成支持文本、图像、语音等多模态数据的融合分析与生立。在自然语言理解深NLU是领域成其模科在语义推理、长文本处理、多语言交互等任务中达到行业领先水平。此外成DeepSeek创新性地提出了力态知识蒸馏技为成能够在保证模科性能的前提下成显著降低算的消耗成使AI服务更易 部署在边缘设备中。通过持续优化算法架构与训练方法成司,技为团队已申请百余项国内外专利。
三、应用场景与产品生态
DeepSeek的技为已实现多维求商业化落地:
智能客服系统:核企业提供24小时多轮对话服务成理解准确率达95%人上;
行业知识引擎:赋能金融研报自力生立、医疗影像辅助诊断等垂直场景;
开发者平台:开放API接口与工具链成支持快速构建定制化AI应用;
教育解决方案:通过个性化学习路径推荐成提升教育资源配置效率。
司,采用"基础研究+场景度耕"的双轮动力模式成已与200+企业建于合作成日均处理数据量超10亿条。
四、发展愿景与社会责任
DeepSeek始终秉持**"技为向善"**的发展理念成在追索商业价值的同时成积极参与AI伦理治理。司,牵头制定了行业首个《生立式AI内容溯源标准》成通过区块链技为实现内容可追溯成防范技为滥用风险。未来三年成DeepSeek计划投入5亿元用 通用人工智能深AGI是的基础研究成并设于开放实验室支持学为机构的前沿探)。司,目标一通过持续创新成打造安全、可信、易用的人工智能基础设施成助的全球数字化转科。
五、团队与文化基因
创始团队由顶尖AI科学以与资度产业专以组立成立员多来自国际知名高校与科技企业。司,构建了**"极客精神+务实创新"**的文化体系成推行扁平化管理与跨学科协作机制成鼓励技为人才在宽松环境中实现突破。通过"星火计划"人才培养项目成DeepSeek已建于起覆盖算法、工程、产品等多领域的千人团队成研发人员占比超过80%成持续核行业发展输送高端人才。

.env文件内容,需要替换成自己的API配置

# ChatGPT
OPENAI_API_BASE="https://xxxxxxxxxxxxx/v1"
OPENAI_API_KEY="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
OPENAI_MODEL_NAME="gpt-4o"

相关文章:

crewai框架第三方API使用官方RAG工具(pdf,csv,json)

最近在研究调用官方的工具,但官方文档的说明是在是太少了,后来在一个视频里看到了如何配置,记录一下 以PDF RAG Search工具举例,官方文档对于自定义模型的说明如下: 默认情况下,该工具使用 OpenAI 进行嵌…...

脉冲信号傅里叶变换与频域分析:从计算到理解

摘要 本文聚焦于脉冲信号的傅里叶变换,详细推导了矩形脉冲信号和单边指数信号的傅里叶变换过程,深入解释了傅里叶变换结果 F ( ω ) F(\omega) F(ω) 的内涵,包括其定义、物理意义、包含的信息以及在实际应用中的重要性。旨在帮助读者全面掌…...

6.【BUUCTF】[SUCTF 2019]CheckIn

打开题目页面如下 看样子是一道有关文件上传的题 上传一句话木马 显示:非法后缀! 看来.php后缀被过滤了 上传一张带有木马的照片 在文件地址处输入cmd 输入以下代码执行 copy 1.jpg/b4.php/a 5.jpg 最后一行有一句话木马 上传带有木马的图片 但其实…...

基于springboot的体质测试数据分析及可视化设计

作者:学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等 文末获取“源码数据库万字文档PPT”,支持远程部署调试、运行安装。 项目包含: 完整源码数据库功能演示视频万字文档PPT 项目编码&#xff1…...

孟加拉国_行政边界省市边界arcgis数据shp格式wgs84坐标

这篇内容将深入探讨孟加拉国的行政边界省市边界数据,该数据是以arcgis的shp格式提供的,并采用WGS84坐标系统。ArcGIS是一款广泛应用于地理信息系统(GIS)的专业软件,它允许用户处理、分析和展示地理空间数据。在GIS领域…...

可视化相机pose colmap形式的相机内参外参

目录 内参外参转换 可视化相机pose colmap形式的相机内参外参 内参外参转换 def visualize_cameras(cameras, images):fig plt.figure()ax fig.add_subplot(111, projection3d)for image_id, image_data in images.items():qvec image_data[qvec]tvec image_data[tvec]#…...

数据结构 树2

文章目录 前言 一,二叉搜索树的高度 二,广度优先VS深度优先 三,广度优先的代码实现 四,深度优先代码实现 五,判断是否为二叉搜索树 六,删除一个节点 七,二叉收索树的中序后续节点 总结 …...

GB/T 44721-2024 与 L3 自动驾驶:自动驾驶新时代的基石与指引

1.前言 在智能网联汽车飞速发展的当下,自动驾驶技术成为了行业变革的核心驱动力。从最初的辅助驾驶功能,到如今不断迈向高度自动化的征程,每一步都凝聚着技术的创新与突破。而在这一进程中,标准的制定与完善对于自动驾驶技术的规…...

AURIX TC275学习笔记3 官方例程 (UART LED WDT)

文章目录 参考资料1. ASCLIN_UART_12. GPIO_LED_Button_13. WDT (Watch Dog Timer) 参考资料 AURIX TC275学习笔记1 资料收集Getting Started with AURIX™ Development Studio 官方帮助文档happy hacking for TC275! 硬件平台使用AURIX™ TC275 Lite 套件,按照参…...

Vim的基础命令

移动光标 H(左) J(上) K(下) L(右) $ 表示移动到光标所在行的行尾, ^ 表示移动到光标所在行的行首的第一个非空白字符。 0 表示移动到光标所在行的行首。 W 光标向前跳转一个单词 w光标向前跳转一个单词 B光标向后跳转一个单词 b光标向后跳转一个单词 G 移动光标到…...

Linux的简单使用和部署4asszaaa0

一.部署 1 环境搭建方式主要有四种: 1. 直接安装在物理机上.但是Linux桌面使用起来非常不友好.所以不建议.[不推荐]. 2. 使用虚拟机软件,将Linux搭建在虚拟机上.但是由于当前的虚拟机软件(如VMWare之类的)存在⼀些bug,会导致环境上出现各种莫名其妙的问题比较折腾.[非常不推荐…...

Linux 的 sysfs 伪文件系统介绍【用户可以通过文件操作与内核交互(如调用内核函数),而无需编写内核代码】

1. 什么是 sysfs伪文件系统? sysfs 是 Linux 内核提供的 伪文件系统,用于向用户空间暴露内核对象的信息和控制接口。它是 procfs 的补充,主要用于管理 设备、驱动、内核子系统 等信息,使用户可以通过文件操作(如用户空…...

每日一题洛谷P5721 【深基4.例6】数字直角三角形c++

#include<iostream> using namespace std; int main() {int n;cin >> n;int t 1;for (int i 0; i < n; i) {for (int j 0; j < n - i; j) {printf("%02d",t);t;}cout << endl;}return 0; }...

计算机网络笔记再战——理解几个经典的协议1

目录 前言 从协议是什么出发 关于TCP/IP协议体系 几个传输方式的分类 地址 网卡 中继器&#xff08;Repeater&#xff09; 网桥&#xff08;Bridge&#xff09; 路由器&#xff08;Router&#xff09; 网关 前言 笔者最近正在整理&#xff08;笔者开的坑不少&#xf…...

ElasticSearch学习笔记-解析JSON格式的内容

如果需要屏蔽其他项目对Elasticsearch的直接访问操作&#xff0c;统一由一个入口访问操作Elasticsearch&#xff0c;可以考虑直接传入JSON格式语句解析执行。 相关依赖包 <properties><elasticsearch.version>7.9.3</elasticsearch.version><elasticsea…...

浅谈密码相关原理及代码实现

本代码仅供学习、研究、教育或合法用途。开发者明确声明其无意将该代码用于任何违法、犯罪或违反道德规范的行为。任何个人或组织在使用本代码时&#xff0c;需自行确保其行为符合所在国家或地区的法律法规。 开发者对任何因直接或间接使用该代码而导致的法律责任、经济损失或…...

Spring Boot常用注解深度解析:从入门到精通

今天&#xff0c;这篇文章带你将深入理解Spring Boot中30常用注解&#xff0c;通过代码示例和关系图&#xff0c;帮助你彻底掌握Spring核心注解的使用场景和内在联系。 一、启动类与核心注解 1.1 SpringBootApplication 组合注解&#xff1a; SpringBootApplication Confi…...

can not add outlook new accounts on the outlook

link : Reference url...

私有化部署 DeepSeek + Dify,构建你的专属私人 AI 助手

私有化部署 DeepSeek Dify&#xff0c;构建你的专属私人 AI 助手 概述 DeepSeek 是一款开创性的开源大语言模型&#xff0c;凭借其先进的算法架构和反思链能力&#xff0c;为 AI 对话交互带来了革新性的体验。通过私有化部署&#xff0c;你可以充分掌控数据安全和使用安全。…...

【Elasticsearch】post_filter

post_filter是 Elasticsearch 中的一种后置过滤机制&#xff0c;用于在查询执行完成后对结果进行过滤。以下是关于post_filter的详细介绍&#xff1a; 工作原理 • 查询后过滤&#xff1a;post_filter在查询执行完毕后对返回的文档集进行过滤。这意味着所有与查询匹配的文档都…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法

树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作&#xff0c;无需更改相机配置。但是&#xff0c;一…...

Mac软件卸载指南,简单易懂!

刚和Adobe分手&#xff0c;它却总在Library里给你写"回忆录"&#xff1f;卸载的Final Cut Pro像电子幽灵般阴魂不散&#xff1f;总是会有残留文件&#xff0c;别慌&#xff01;这份Mac软件卸载指南&#xff0c;将用最硬核的方式教你"数字分手术"&#xff0…...

第7篇:中间件全链路监控与 SQL 性能分析实践

7.1 章节导读 在构建数据库中间件的过程中&#xff0c;可观测性 和 性能分析 是保障系统稳定性与可维护性的核心能力。 特别是在复杂分布式场景中&#xff0c;必须做到&#xff1a; &#x1f50d; 追踪每一条 SQL 的生命周期&#xff08;从入口到数据库执行&#xff09;&#…...

什么是VR全景技术

VR全景技术&#xff0c;全称为虚拟现实全景技术&#xff0c;是通过计算机图像模拟生成三维空间中的虚拟世界&#xff0c;使用户能够在该虚拟世界中进行全方位、无死角的观察和交互的技术。VR全景技术模拟人在真实空间中的视觉体验&#xff0c;结合图文、3D、音视频等多媒体元素…...

数学建模-滑翔伞伞翼面积的设计,运动状态计算和优化 !

我们考虑滑翔伞的伞翼面积设计问题以及运动状态描述。滑翔伞的性能主要取决于伞翼面积、气动特性以及飞行员的重量。我们的目标是建立数学模型来描述滑翔伞的运动状态,并优化伞翼面积的设计。 一、问题分析 滑翔伞在飞行过程中受到重力、升力和阻力的作用。升力和阻力与伞翼面…...

Kubernetes 节点自动伸缩(Cluster Autoscaler)原理与实践

在 Kubernetes 集群中&#xff0c;如何在保障应用高可用的同时有效地管理资源&#xff0c;一直是运维人员和开发者关注的重点。随着微服务架构的普及&#xff0c;集群内各个服务的负载波动日趋明显&#xff0c;传统的手动扩缩容方式已无法满足实时性和弹性需求。 Cluster Auto…...

【51单片机】4. 模块化编程与LCD1602Debug

1. 什么是模块化编程 传统编程会将所有函数放在main.c中&#xff0c;如果使用的模块多&#xff0c;一个文件内会有很多代码&#xff0c;不利于组织和管理 模块化编程则是将各个模块的代码放在不同的.c文件里&#xff0c;在.h文件里提供外部可调用函数声明&#xff0c;其他.c文…...

FOPLP vs CoWoS

以下是 FOPLP&#xff08;Fan-out panel-level packaging 扇出型面板级封装&#xff09;与 CoWoS&#xff08;Chip on Wafer on Substrate&#xff09;两种先进封装技术的详细对比分析&#xff0c;涵盖技术原理、性能、成本、应用场景及市场趋势等维度&#xff1a; 一、技术原…...

验证redis数据结构

一、功能验证 1.验证redis的数据结构&#xff08;如字符串、列表、哈希、集合、有序集合等&#xff09;是否按照预期工作。 2、常见的数据结构验证方法&#xff1a; ①字符串&#xff08;string&#xff09; 测试基本操作 set、get、incr、decr 验证字符串的长度和内容是否正…...