CrewAI智能体开发:人工智能与机器学习
概述
利用AI服务,生成图像,处理视觉,并构建智能系统
这些工具与AI和机器学习服务集成,可增强您的代理,使其具备图像生成、视觉处理和智能代码执行等高级功能。
DALL-E 工具
DallETool 是一个强大的工具,旨在根据文本描述生成图像。
DallETool
描述此工具用于赋予 Agent 使用 DALL-E 模型生成图像的能力。它是一个基于 Transformer 的模型,可以根据文本描述生成图像。此工具允许 Agent 根据用户提供的文本输入生成图像。
安装安装 crewai_tools 包
pip install 'crewai[tools]'
示例请记住,使用此工具时,文本必须由 Agent 自己生成。文本必须是对您要生成的图像的描述。
from crewai_tools import DallETool
Agent(
...
tools=[DallETool()],
)
如果需要,您还可以通过将参数传递给 DallETool 类来调整 DALL-E 模型的参数。例如:
from crewai_tools import DallETool
dalle_tool = DallETool(model="dall-e-3",
size="1024x1024",
quality="standard",
n=1)
Agent(
...
tools=[dalle_tool]
)
参数基于 OpenAI API 中的 client.images.generate 方法。
视觉工具
VisionTool 旨在从图像中提取文本。
VisionTool (视觉工具)
描述此工具用于从图像中提取文本。当传递给代理(Agent)时,它将提取图像中的文本,并将其用于生成响应、报告或任何其他输出。应将图像的 URL 或路径(PATH)传递给代理。
安装安装 crewai_tools 包
pip install 'crewai[tools]'
用法为了使用 VisionTool,需要在环境变量 OPENAI_API_KEY 中设置 OpenAI API 密钥。
from crewai_tools import VisionTool
vision_tool = VisionTool()
@agent
def researcher(self) -> Agent:
'''
This agent uses the VisionTool to extract text from images.
'''
return Agent(
config=self.agents_config["researcher"],
allow_delegation=False,
tools=[vision_tool]
)
参数VisionTool 需要以下参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| image_path_url | 字符串 |
强制性。需要从中提取文本的图像文件的路径。 |
AI 思维工具
复制页面
AIMindTool 旨在通过自然语言查询数据源。
AIMindTool (AI思维工具)
描述AIMindTool 是对由 MindsDB 提供的 AI-Minds 的封装。它允许您只需配置连接参数,即可通过自然语言查询数据源。当您需要从存储在 PostgreSQL、MySQL、MariaDB、ClickHouse、Snowflake 和 Google BigQuery 等各种数据源中的数据获取问题答案时,此工具非常有用。Minds 是工作原理类似于大型语言模型 (LLM) 的 AI 系统,但其功能不仅限于此,它可以回答来自任何数据的任何问题。这是通过以下方式实现的:
- 使用参数化搜索选择与答案最相关的数据
- 通过语义搜索理解含义并在正确的上下文中提供响应
- 通过分析数据和使用机器学习 (ML) 模型提供精确的答案
安装要将此工具整合到您的项目中,您需要安装 Minds SDK
uv add minds-sdk
开始步骤要有效使用 AIMindTool,请遵循以下步骤
- 软件包安装:确认您的 Python 环境中已安装
crewai[tools]和minds-sdk软件包。 - 获取 API 密钥:在 此处 注册 Minds 账户,并获取 API 密钥。
- 环境配置:将获取的 API 密钥存储在名为
MINDS_API_KEY的环境变量中,以便工具调用。
示例以下示例演示了如何初始化该工具并执行查询
from crewai_tools import AIMindTool
# Initialize the AIMindTool
aimind_tool = AIMindTool(
datasources=[
{
"description": "house sales data",
"engine": "postgres",
"connection_data": {
"user": "demo_user",
"password": "demo_password",
"host": "samples.mindsdb.com",
"port": 5432,
"database": "demo",
"schema": "demo_data"
},
"tables": ["house_sales"]
}
]
)
# Run a natural language query
result = aimind_tool.run("How many 3 bedroom houses were sold in 2008?")
print(result)
参数AIMindTool 接受以下参数
- api_key:可选。您的 Minds API 密钥。如果未提供,将从
MINDS_API_KEY环境变量中读取。 - datasources:字典列表,每个字典包含以下键
- description:对数据源中所包含数据的描述。
- engine:数据源的引擎(或类型)。
- connection_data:包含数据源连接参数的字典。
- tables:数据源将使用的表列表。这是可选的,如果使用数据源中的所有表,可以省略。
支持的数据源列表及其连接参数可以在 此处 找到。
代理集成示例以下是如何将 AIMindTool 与 CrewAI 智能体集成的方法
from crewai import Agent
from crewai.project import agent
from crewai_tools import AIMindTool
# Initialize the tool
aimind_tool = AIMindTool(
datasources=[
{
"description": "sales data",
"engine": "postgres",
"connection_data": {
"user": "your_user",
"password": "your_password",
"host": "your_host",
"port": 5432,
"database": "your_db",
"schema": "your_schema"
},
"tables": ["sales"]
}
]
)
# Define an agent with the AIMindTool
@agent
def data_analyst(self) -> Agent:
return Agent(
config=self.agents_config["data_analyst"],
allow_delegation=False,
tools=[aimind_tool]
)
结论AIMindTool 提供了一种使用自然语言查询数据源的强大方式,无需编写复杂的 SQL 查询即可更轻松地提取见解。通过连接到各种数据源并利用 AI-Minds 技术,此工具使智能体能够高效地访问和分析数据。
常见用例
- 内容生成:创建图像、文本和多媒体内容
- 数据分析:执行代码并分析复杂数据集
- 知识系统:构建 RAG 系统和智能数据库
- 计算机视觉:处理和理解视觉内容
- AI 安全:实施内容审核和安全检查
from crewai_tools import DallETool, VisionTool, CodeInterpreterTool
# Create AI tools
image_generator = DallETool()
vision_processor = VisionTool()
code_executor = CodeInterpreterTool()
# Add to your agent
agent = Agent(
role="AI Specialist",
tools=[image_generator, vision_processor, code_executor],
goal="Create and analyze content using AI capabilities"
)
《AI提示工程必知必会》为读者提供了丰富的AI提示工程知识与实战技能。《AI提示工程必知必会》主要内容包括各类提示词的应用,如问答式、指令式、状态类、建议式、安全类和感谢类提示词,以及如何通过实战演练掌握提示词的使用技巧;使用提示词进行文本摘要、改写重述、语法纠错、机器翻译等语言处理任务,以及在数据挖掘、程序开发等领域的应用;AI在绘画创作上的应用,百度文心一言和阿里通义大模型这两大智能平台的特性与功能,以及市场调研中提示词的实战应用。通过阅读《AI提示工程必知必会》,读者可掌握如何有效利用AI提示工程提升工作效率,创新工作流程,并在职场中脱颖而出。

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)