Install
openclaw skills install ai-workflow-engine智能工作流自动化引擎,支持任务编排、Agent协作、RAG知识库和自动代码生成,实现端到端AI工作流构建与执行。
openclaw skills install ai-workflow-engine让AI工作流变得像说话一样简单
根据你的简单描述,自动生成完整工作流!
from ai_workflow import WorkflowGenerator
gen = WorkflowGenerator()
# 描述你的需求
workflow = gen.generate("""
1. 爬取某网站数据
2. 清洗数据
3. 存入数据库
4. 生成分析报告
5. 发送到我的邮箱
""")
# 执行工作流
workflow.run()
from ai_workflow import Workflow, Step, Parallel
# 构建工作流
wf = Workflow([
Step("爬取", fetch_data),
Step("清洗", clean_data),
Step("分析", analyze),
Step("报告", generate_report)
])
wf.run()
from ai_workflow import Agent, orchestrate
agents = [
Agent("研究员", search_and_analyze),
Agent("分析师", deep_analyze),
Agent("写手", write_report)
]
result = orchestrate(agents, task="分析BTC价格趋势")
wf = Workflow([
Step("第一步", do_something),
Step("第二步", do_next),
Step("第三步", final_step)
])
from ai_workflow import Condition
wf = Workflow([
Step("检查", check_status),
Condition(
if_true=Step("成功", handle_success),
if_false=Step("失败", handle_failure)
)
])
from ai_workflow import ParallelStep
wf = Workflow([
ParallelStep([
Step("任务A", task_a),
Step("任务B", task_b),
Step("任务C", task_c)
]),
Step("汇总", aggregate_results)
])
from ai_workflow import Retry, Loop
# 失败重试3次
wf = Workflow([
Retry(max_attempts=3)(
Step("可能失败", risky_task)
)
])
# 循环直到成功
wf = Workflow([
Loop(until="success")(
Step("尝试", try_task)
)
])
from ai_workflow import Agent
# 创建研究员Agent
researcher = Agent(
name="研究员",
role="负责信息搜集和分析",
tools=[search_web, read_file],
knowledge="专业领域知识库"
)
# 创建写手Agent
writer = Agent(
name="写手",
role="负责内容创作",
tools=[write_file, send_email]
)
from ai_workflow import orchestrate
result = orchestrate(
agents=[researcher, analyst, writer],
task="写一篇关于AI的工作报告",
mode="sequential" # 或 parallel
)
from ai_workflow import KnowledgeBase
kb = KnowledgeBase("公司知识库")
# 添加文档
kb.add_document("产品介绍.pdf")
kb.add_document("技术文档.docx")
kb.add_document("常见问题.md")
# 问答
answer = kb.query("公司的使命是什么?")
print(answer.text)
print(answer.sources) # 引用来源
# 当RAG无法回答时,自动调用工具
kb = KnowledgeBase("助手", tools=[search_web, calculator])
answer = kb.query("昨天BTC价格是多少?")
# 如果知识库没有,自动搜索网络
帮我写一个爬虫工作流:
1. 爬取某网站的产品数据
2. 清洗数据(去重、填充缺失)
3. 存入MySQL数据库
4. 生成Excel报表
5. 发送到邮箱
# 生成的代码会自动包含:
# 1. 爬虫实现
# 2. 数据清洗
# 3. 数据库操作
# 4. Excel导出
# 5. 邮件发送
# 6. 错误处理
# 7. 日志记录
# 8. 配置文件
# 执行
workflow.run()
from ai_workflow import Config
# 配置AI模型
Config.set("openai_key", "sk-xxx")
Config.set("model", "gpt-4")
# 配置数据库
Config.set("db_url", "mysql://user:pass@localhost/db")
# 配置邮件
Config.set("smtp", {"host": "smtp.gmail.com", "port": 587})
pip install pandas openpyxl requests beautifulsoup4
pip install chromadb pypdf # RAG
pip install openai anthropic # AI模型
workflow = generate_workflow("""
1. 搜索AI最新新闻
2. 分析热点话题
3. 撰写文章
4. 生成配图
5. 发布到博客
""")
workflow = generate_workflow("""
1. 从数据库读取销售数据
2. 分析销售趋势
3. 生成可视化图表
4. 输出分析报告
""")
workflow = generate_workflow("""
1. 接收用户问题
2. 查询FAQ知识库
3. 如无法回答,搜索文档
4. 生成回复
5. 记录对话
""")
MIT License