Skip to content

Commit 924ded1

Browse files
committed
add img and steps
1 parent 9ed9370 commit 924ded1

File tree

6 files changed

+111
-64
lines changed

6 files changed

+111
-64
lines changed
244 KB
Loading

docs/.vuepress/public/op_write.png

96.7 KB
Loading
109 KB
Loading
2.12 MB
Loading
139 KB
Loading

docs/zh/notes/guide/agent/DataFlow-AgentPipelineOrchestration.md

Lines changed: 111 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,24 @@ permalink: /zh/guide/DataFlow-AgentPipelineOrchestration/
99

1010
本指南将帮助您快速上手 DataFlow Agent 平台的5个核心功能模块。
1111

12+
13+
## 安装
14+
15+
```bash
16+
git clone https://github.com/OpenDCAI/DataFlow-Agent.git
17+
cd DataFlow-Agent
18+
pip install -r requirements.txt
19+
pip install -e .
20+
```
21+
22+
## 启动Web界面
23+
24+
```bash
25+
python gradio_app/app.py
26+
```
27+
28+
访问 `http://127.0.0.1:7860` 开始使用
29+
1230
## 目录
1331

1432
1. [管线推荐](#1-管线推荐)
@@ -89,11 +107,17 @@ permalink: /zh/guide/DataFlow-AgentPipelineOrchestration/
89107

90108
### 使用步骤
91109

92-
1. 在"目标描述"框中输入您的需求
93-
2. 配置 API 信息(URL、Key、模型)
94-
3. (可选)配置嵌入模型和调试选项
95-
4. 点击"生成 Pipeline"按钮
96-
5. 查看生成的代码和执行结果
110+
![pipeline_rec](/pipeline_rec.png)
111+
112+
1. `step1:`选择管线推荐子页面
113+
2. `step2:`在"目标描述"框中输入您的需求
114+
3. `step3:`输入需要处理jsonl文件
115+
4. `step4:`配置 API 信息(URL、Key、模型)
116+
5. `step5:`(可选)配置嵌入模型和调试选项
117+
6. `step6:`选择是否需要自动更新向量索引(如果出现算子不在注册机里,则需要勾选)
118+
7. `step7:`选择是否使用debug模式(debug模式会自动运行管线,直到自大迭代轮次)
119+
8. `step8:`右侧 查看生成的代码和执行结果
120+
97121

98122
---
99123

@@ -197,13 +221,13 @@ class YourOperator(Operator):
197221

198222
### 使用步骤
199223

200-
1. 在"目标描述"中详细说明算子功能
201-
2. 选择合适的算子类别
202-
3. 配置 API 信息
203-
4. (可选)启用调试模式以自动修复错误
204-
5. 点击"生成算子"按钮
205-
6. 查看生成的代码和测试结果
206-
7. 如需修改,可调整参数后重新生成
224+
![op_write](/op_write.png)
225+
226+
1. `step1:` 在"目标描述"中详细说明算子功能
227+
2. `step2:` 选择合适的算子类别,配置 API 信息
228+
3. `step3:` (可选)启用调试模式以自动修复错误
229+
4. `step4:` 设置debug轮次
230+
5. `step5:` 设置输出jsonl文件路径
207231

208232
---
209233

@@ -267,7 +291,7 @@ class YourOperator(Operator):
267291
- 算子会被添加到 Pipeline 序列中
268292

269293
**步骤 4: 调整顺序**
270-
- 在 Pipeline 可视化区域,拖拽算子卡片调整顺序
294+
- 在 Pipeline 可视化区域,可以检查算子前后key是否对其
271295
- 系统会自动重新编号
272296

273297
**步骤 5: 自动链接**
@@ -306,20 +330,49 @@ class YourOperator(Operator):
306330

307331
#### 3. 生成的代码
308332
```python
309-
# 完整的 Pipeline 执行代码
310-
from dataflow import Dataset
311-
from dataflow.operators import *
312-
313-
# 加载数据
314-
dataset = Dataset.load("input.jsonl")
315-
316-
# 执行 Pipeline
317-
dataset = TextCleanerOperator(...).run(dataset, ...)
318-
dataset = DeduplicatorOperator(...).run(dataset, ...)
319-
...
333+
class RecommendPipeline(PipelineABC):
334+
def __init__(self):
335+
super().__init__()
336+
# -------- FileStorage --------
337+
self.storage = FileStorage(
338+
first_entry_file_name="/tmp/test_sample_10.jsonl",
339+
cache_path="dataflow_cache",
340+
file_name_prefix="dataflow_cache_step",
341+
cache_type="jsonl",
342+
)
343+
# -------- LLM Serving (Remote) --------
344+
self.llm_serving = APILLMServing_request(
345+
api_url="http://123.129.219.111:3000/v1/chat/completions",
346+
key_name_of_api_key="DF_API_KEY",
347+
model_name="gpt-4o",
348+
max_workers=100,
349+
)
350+
# -------- Operators --------
351+
self.condor_generator = CondorGenerator(llm_serving=self.llm_serving, llm_serving=self.llm_serving, num_samples=15, use_task_diversity=True)
352+
self.prompted_generator = PromptedGenerator(llm_serving=self.llm_serving, llm_serving=self.llm_serving, system_prompt='分析样本数据,识别与可再生能源相关的关键主题和趋势。', json_schema=None)
353+
self.task2_vec_dataset_evaluator = Task2VecDatasetEvaluator(llm_serving=self.llm_serving, device='cuda', sample_nums=10, sample_size=1, method='montecarlo', model_cache_dir='./dataflow_cache')
354+
355+
def forward(self):
356+
self.condor_generator.run(
357+
storage=self.storage.step(),
358+
input_key='raw_content',
359+
output_key='generated_content_1'
360+
)
361+
self.prompted_generator.run(
362+
storage=self.storage.step(),
363+
input_key='generated_content_1',
364+
output_key='generated_content_2'
365+
)
366+
self.task2_vec_dataset_evaluator.run(
367+
storage=self.storage.step(),
368+
input_key='generated_content_2'
369+
)
370+
371+
if __name__ == "__main__":
372+
pipeline = RecommendPipeline()
373+
pipeline.compile()
374+
pipeline.forward()
320375

321-
# 保存结果
322-
dataset.save("output.jsonl")
323376
```
324377

325378
#### 4. 处理结果数据 (前 100 条)
@@ -336,15 +389,18 @@ dataset.save("output.jsonl")
336389

337390
### 使用步骤
338391

339-
1. 配置 API 信息和输入文件路径
340-
2. 选择算子分类和具体算子
341-
3. 编辑 `__init__()``run()` 参数(JSON 格式)
342-
4. 点击"➕ 添加算子到 Pipeline"
343-
5. 重复步骤 2-4 添加更多算子
344-
6. 拖拽调整算子顺序(可选)
345-
7. 检查自动链接状态,确保参数正确
346-
8. 点击"🚀 运行 Pipeline"
347-
9. 查看生成的代码和执行结果
392+
![op_assemble](/op_assemble.png)
393+
394+
1. `step1:` 配置 API 信息和输入文件路径
395+
2. `step2:` 配置APIKey
396+
3. `step3:` 配置模型
397+
4. `step4:` 选择待处理文件路径
398+
5. `step5:` 选择要组合的算子类别
399+
6. `step6:` 选择要组合的算子
400+
7. `step7:` 如果算子提供了prompttemplate需要选择
401+
8. `step8:` 编辑算子输入和输出key!!
402+
9. `step9:` 运行
403+
10. `step10:` 可以查看组装的代码,和处理结果数据,以及输出文件路径
348404

349405
### 高级技巧
350406

@@ -383,7 +439,6 @@ PromptAgent 前端,用于生成和优化算子的 Prompt 模板,支持多轮
383439
- **算子名称 (op-name)** (必需)
384440
- Prompt 类的名称
385441
- 示例:`SentimentAnalysisPrompt`
386-
- 示例:`MarketingCopywriterPrompt`
387442

388443
- **输出格式** (可选)
389444
- 指定 Prompt 输出的格式
@@ -451,8 +506,6 @@ PromptAgent 前端,用于生成和优化算子的 Prompt 模板,支持多轮
451506

452507
#### 6. Prompt 代码预览
453508
```python
454-
from dataflow_agent.promptstemplates import PromptTemplate
455-
456509
class SentimentAnalysisPrompt(PromptTemplate):
457510
"""情感分析 Prompt 模板"""
458511

@@ -465,22 +518,6 @@ class SentimentAnalysisPrompt(PromptTemplate):
465518
return self.user_prompt_template.format(text=text)
466519
```
467520

468-
#### 7. 测试代码预览
469-
```python
470-
import json
471-
from your_prompt import SentimentAnalysisPrompt
472-
473-
# 加载测试数据
474-
with open("test_data.jsonl") as f:
475-
test_data = [json.loads(line) for line in f]
476-
477-
# 测试 Prompt
478-
prompt = SentimentAnalysisPrompt()
479-
for item in test_data:
480-
result = prompt.format(**item)
481-
print(result)
482-
```
483-
484521
### 多轮改写功能
485522

486523
在右侧对话区域,您可以:
@@ -510,6 +547,14 @@ for item in test_data:
510547

511548
### 使用步骤
512549

550+
![prompt_agent](/prompt_agent.png)
551+
552+
1. `step1:` 选择你要复用的带有prompttemplate的算子名称
553+
2. `step2:` 输入你想修改的提示词内容
554+
3. `step3:` 点击“生成提示词模板”
555+
4. `step4:` 右侧预览生成的“输出文件路径,测试数据,提示词模板代码,测试代码”
556+
557+
513558
#### 初次生成
514559
1. 配置 API 信息(URL、Key、模型)
515560
2. 填写任务描述、算子名称
@@ -717,16 +762,18 @@ downloaded_data/
717762

718763
### 使用步骤
719764

765+
![web_agent](/web_agent.png)
766+
720767
#### 基础使用
721-
1. 在"目标描述"中详细说明要收集的数据类型
722-
2. 选择数据类别(PT 或 SFT)
723-
3. 配置数据集数量和大小限制
724-
4. 配置 LLM API 信息
725-
5. (可选)配置 Kaggle、Tavily 等服务的密钥
726-
6. 点击"开始网页采集与转换"按钮
727-
7. 实时查看执行日志
728-
8. 等待完成后查看结果摘要
729-
9. 在下载目录中查看采集的数据
768+
1. `step1:` 在"目标描述"中详细说明要收集的数据类型
769+
2. `step2:` 选择数据类别(PT 或 SFT)
770+
3. `step3:` 配置数据集数量和大小限制
771+
4. `step4:` 配置 LLM API 信息
772+
5. `step5:` (可选)配置 Kaggle、Tavily 等服务的密钥
773+
6. `step6:` 点击"开始网页采集与转换"按钮
774+
7. `step7:` 实时查看执行日志
775+
8. `step8:` 等待完成后查看结果摘要
776+
9. `step9:` 在下载目录中查看采集的数据
730777

731778
#### 高级使用
732779
1. 展开"⚙️ 高级配置"区域
@@ -792,4 +839,4 @@ downloaded_data/
792839
- **管线推荐**: 可以直接运行,但建议先在测试数据上验证
793840
- **算子编写**: 建议先测试,必要时手动调整
794841
- **手动编排**: 生成的代码已经过测试,可以直接使用
795-
- **Prompt 模板**: 建议多轮优化后再用于生产环境
842+
- **Prompt 模板**: 建议多轮优化后再用于生产环境

0 commit comments

Comments
 (0)