1、agent 循环,自己迭代自己
2、跑1轮,出来改改进方向,1 2 3,然后大模型自己选择工具,在进行下一轮,

自己画网格对比
向前比,排序

nohup python /home/liyuanhao/label_generator/generate_labels未来收益率预测.py >zzz.txt &

最简架构:单Agent + 两个工具
给现在的Agent加两个工具函数即可:

write_log(content):写入迭代总结。
read_log():读取历史总结。
这样你就拥有了一个具备“长期记忆”且成本极低的迭代系统。单次调用可能只需要几千token,效果却比硬塞100万token要好得多。这才是把token用在刀刃上。

看现有项目代码,参考项目内容,生成 简单可实现的单Agent + 文件读写 + 脚本预处理 的设计txt
最简架构:单Agent + 两个工具
给现在的Agent加两个工具函数即可:

write_log(content):写入迭代总结。
read_log():读取历史总结。
这样你就拥有了一个具备“长期记忆”且成本极低的迭代系统。单次调用可能只需要几千token,效果却比硬塞100万token要好得多。这才是把token用在刀刃上。

在你的Skill里加一个Python脚本预处理步骤:

逻辑:在把结果给大模型看之前,先用脚本跑一遍数据。
操作:让脚本提取核心指标(年化、回撤、夏普),如果回测失败,脚本直接截取报错信息的最后500字。
结果:模型看到的不再是“回测失败了,请修改”,而是“回测失败,错误代码Line 45: SyntaxError,因子计算出现NaN值”。

保留单Agent,但将“生成”和“反思”分成两个独立的LLM调用(同一模型,不同提示词)。

引入结构化记忆JSON,每次迭代只传递这个JSON和上一轮的关键结果,不堆砌全量历史。

迭代控制放在Python脚本,用简单的循环和条件判断驱动,不需要额外的Agent编排框架。

增加:

一个外部Python循环(while或for)

一个“反思压缩”的提示词模板(复用现有模型)

一个记忆JSON的存储和更新逻辑

回测数据时间范围自动更新

生成py,根据
/mnt/raid0-0-lv0/llm-fadt-lyh/mysql_import/backtest-backtrader/data/close_data.csv

/mnt/raid0-0-lv0/llm-fadt-lyh/mysql_import/backtest-backtrader/data/open_data.csv
l,
“finish_reason”: “stop”,
“stop_reason”: null,
“token_ids”: null
}
],
“service_tier”: null,
“system_fingerprint”: null,
“usage”: {
“prompt_tokens”: 1701,
“total_tokens”: 3863,
“completion_tokens”: 2162,
“prompt_tokens_details”: null
},
“prompt_logprobs”: null,
“prompt_token_ids”: null,
“kv_transfer_params”: null
}

==================================================
Assistant Reply:
{
“analysis”: “首先,从文本中识别出所有业务、产品、技术、政策相关词汇,包括:电子数据取证、电子数据取证行业、电子数据作为独立证据形式、《民事诉讼法》、三大产品五大服务、电子数据取证系列、刑事技术产品系列、网络信息安全系列、取证服务云、搜索云服务、公证云服务、电子数据鉴定服务、数字知识产权保护服务、云计算中心、超级计算中心、取证大师、取证塔、可视化数据智能分析系统(蛛网)、MCE认证、电子数据调查分析师岗位培训、司法鉴定许可证、福建中证司法鉴定中心、CNAS认可、《电子数据复制设备鉴定实施规范》、电子数据复制设备、公安网监、刑侦、检察院、工商、海关、企业、跨国企业、反垄断、反商业贿赂、反不当竞争、取证产品更新换代、市场渗透率、用户群体扩展、行业标准、岗位能力证书、绿色计算服务等。其次,判断这些词汇是否属于投资概念范畴:主营业务相关如电子数据取证行业、三大产品五大服务;产品产出相关如取证大师、取证塔、蛛网系统、三云服务;技术工艺相关如云计算中心、超级计算中心、MCE认证、司法鉴定标准;政策事件相关如《民事诉讼法》修改、司法鉴定许可证、CNAS认可、岗位培训项目。最后,为每个符合投资概念定义范围的词汇生成概念名称、定义和提取原因。”,
“concepts”: [
{
“name”: “电子数据取证行业”,
“definition”: “指专注于电子数据(如计算机、手机、网络日志等)的采集、分析、鉴定与证据化处理的行业,广泛应用于司法、行政执法和企业数据安全等领域。该行业是美亚柏科的核心主营业务领域,具有较高的技术门槛和政策支持。”,
“reason”: “原文提到:‘公司是国内唯一一家上市的主营电子数据取证行业的公司。公司自成立以来一直从事信息安全行业中电子数据取证和网络信息安全的技术研发、产品销售与整体服务。’”
},
{
“name”: “三大产品五大服务”,
“definition”: “美亚柏科主营业务结构,包括三大产品线:电子数据取证系列、刑事技术产品系列、网络信息安全系列;以及五大服务:取证服务云、搜索云服务、公证云服务、电子数据鉴定服务、数字知识产权保护服务,构成公司完整的业务生态体系。”,
“reason”: “原文提到:‘公司主营业务由“三大产品五大服务”组成。三大产品包括电子数据取证系列、刑事技术产品系列及网络信息安全系列。五大服务依托于“云计算中心”,面向全行业客户主要提供取证服务云和搜索云服务,而面向民用及其他行业则提供公证云服务、电子数据鉴定服务和数字知识产权保护服务。’”
},
{
“name”: “取证大师”,
“definition”: “美亚柏科自主研发的电子数据取证核心产品之一,用于对计算机、移动设备等存储介质中的数据进行提取、分析和证据固化,是公司产品线中的代表性产品。”,
“reason”: “原文提到:‘截至目前公司已经有取证大师、取证塔及可视化数据智能分析系统(蛛网)等100多款产品,产品丰富度较高。’”
},
{
“name”: “取证塔”,
“definition”: “美亚柏科推出的用于大规模电子数据取证的硬件设备或系统平台,可支持多设备并行处理,提升取证效率,适用于公安、检察院等执法部门的批量数据处理需求。”,
“reason”: “原文提到:‘截至目前公司已经有取证大师、取证塔及可视化数据智能分析系统(蛛网)等100多款产品,产品丰富度较高。’”
},
{
“name”: “可视化数据智能分析系统(蛛网)”,
“definition”: “美亚柏科研发的用于电子数据智能分析的可视化系统,通过图形化界面展示数据关联、线索追踪等,提升电子证据分析效率和准确性,是公司技术领先的重要体现。”,
“reason”: “原文提到:‘截至目前公司已经有取证大师、取证塔及可视化数据智能分析系统(蛛网)等100多款产品,产品丰富度较高。’”
},
{
“name”: “三云服务”,
“definition”: “指美亚柏科依托云计算中心推出的取证服务云、搜索云服务、公证云服务,是公司从产品销售向服务转型的核心业务,面向企业、司法、民用等多领域提供云端数据处理与分析服务。”,
“reason”: “原文提到:‘另外随着各家企业对自身商业机密及知识产权保护的重视增加,公司恰逢其时推出的三云服务也有望获得快速增长,为公司带来新的业绩增长点。’”
},
{
“name”: “云计算中心”,
“definition”: “美亚柏科自建的超级计算与云计算服务平台,具备高算力和高并发处理能力,支撑公司提供取证云、搜索云等服务,是公司技术基础设施和业务转型的关键支撑。”,
“reason”: “原文提到:‘公司下属的厦门超级计算中心(云计算中心)于2012年3月正式启动,一期计算峰值超过200万亿次/秒。作为国内首家由企业承建及运营的超级计算中心……’”
},
{
“name”: “MCE认证”,
“definition”: “美亚柏科于2010年率先推出的电子数据取证调查员认证培训及考试体系,是国内首个行业认证标准,提升了公司在行业内的技术权威性和专业壁垒。”,
“reason”: “原文提到:‘2010年公司率先推出国内唯一的电子数据取证调查员认证培训及考试(MCE认证),获得行业广泛认可,并制定了电子数据取证行业技术认证的中国标准。’”
},
{
“name”: “电子数据司法鉴定”,
“definition”: “由具备司法鉴定资质的机构对电子数据的真实性、完整性、合法性进行专业分析和鉴定,美亚柏科通过其下属的福建中证司法鉴定中心提供该服务,具备法律效力。”,
“reason”: “原文提到:‘2005年获得了福建省司法厅颁发的电子数据“司法鉴定许可证”,建立了国内领先的电子数据鉴定中心——福建中证司法鉴定中心……’”
},
{
“name”: “CNAS认可”,
“definition”: “中国合格评定国家认可委员会(CNAS)对实验室或鉴定机构的技术能力进行的权威认可,福建中证司法鉴定中心获得该认可,证明其鉴定能力达到国际标准。”,
“reason”: “原文提到:‘中证司法鉴定中心也是全国第一个通过CNAS认可的非公电子数据鉴定机构。’”
},
{
“name”: “《电子数据复制设备鉴定实施规范》”,
“definition”: “由美亚柏科下属鉴定中心报批、司法部发布的行业技术规范,为电子数据复制设备的功能要求和检验方法提供统一标准,是公司参与制定行业标准的重要体现。”,
“reason”: “原文提到:‘2014年5月由福建中证司法鉴定中心报批的《电子数据复制设备鉴定实施规范》获得通过,并由司法部司法鉴定管理局正式发布。’”
},
{
“name”: “《民事诉讼法》修改”,
“definition”: “2013年1月1日起施行的新《民事诉讼法》将电子数据确立为独立证据形式,为电子数据取证行业提供了法律依据和政策支持,直接推动了市场需求增长。”,
“reason”: “原文提到:‘2013年1月1日,新修改的《民事诉讼法》正式施行,至此,电子数据作为独立证据形式的法律地位正式确立。’”
},
{
“name”: “电子数据取证产品市场”,
“definition”: “指面向公安、检察院、工商、海关等执法部门及企业客户提供的电子数据取证软硬件产品市场,市场规模预计2015年达近10亿元,年增速超20%,是公司主要收入来源。”,
“reason”: “原文提到:‘据中国产业信息网估计2012年国内电子数据取证产品市场容量约为4.8亿元人民币。预计在未来几年内,电子数据取证行业的市场容量增长速度将至少保持在20%以上,到2015年将达到近10亿元人民币。’”
},
{
“name”: “数字知识产权保护服务”,
“definition”: “美亚柏科面向企业客户提供的用于保护商业机密、专利、版权等数字资产的服务,包括数据溯源、侵权取证、电子证据固化等,是公司拓展民用市场的重点方向。”,
“reason”: “原文提到:‘面向民用及其他行业则提供公证云服务、电子数据鉴定服务和数字知识产权保护服务。’”
},
{
“name”: “取证服务云”,
“definition”: “美亚柏科基于云计算中心提供的电子数据取证云端服务,客户可通过网络调用平台进行数据提取、分析和证据生成,降低客户硬件投入成本。”,
“reason”: “原文提到:‘公司主要依托于“云计算中心”,面向全行业客户主要提供取证服务云和搜索云服务……’”
},
{
“name”: “搜索云服务”,
“definition”: “基于云计算平台提供的大规模数据搜索与关联分析服务,适用于公安、企业等客户在海量数据中快速定位关键线索,提升数据处理效率。”,
“reason”: “原文提到:‘公司主要依托于“云计算中心”,面向全行业客户主要提供取证服务云和搜索云服务……’”
},
{
“name”: “公证云服务”,
“definition”: “美亚柏科为民间或企业客户提供电子数据在线公证服务,通过云端平台对电子证据进行固化、存证和时间戳认证,保障数据的法律效力。”,
“reason”: “原文提到:‘面向民用及其他行业则提供公证云服务、电子数据鉴定服务和数字知识产权保护服务。’”
}
]
}

Testing streaming chat completion API…

Streaming Response:
Python是一种高级、解释型、通用编程语言,语法简洁易读,适合初学者入门。
它拥有丰富的标准库和第三方模块,广泛应用于Web开发、数据分析、人工智能、自动化脚本等领域。
Python支持多种编程范式,包括面向对象、函数式和过程式编程,具有强大的社区支持和跨平台特性。
[Stream finished]


All tests completed!
(base) liyuanhao@user:~$

        "name": "三云服务",
        "definition": "指取证服务云、搜索云服务和公证云服务,是美亚柏科从产品销售向服务转型的核心战略,面向全行业客户,提供基于云计算的电子数据服务解决方案。",
        "reason": "原文提到:‘另外随着各家企业对自身商业机密及知识产权保护的重视增加,公司恰逢其时推出的三云服务也有望获得快速增长,为公司带来新的业绩增长点。’"
    }
]

}

[Time] Total request time: 106.91 seconds
[Usage] Prompt tokens: 1705, Completion tokens: 2092, Total tokens: 3797
[Speed] Generation speed: 19.57 tokens/second

Testing streaming chat completion API…

Streaming Response:
Python是一种高级、解释型、通用编程语言,语法简洁易读,适合初学者入门。
它拥有丰富的标准库和第三方模块,广泛应用于Web开发、数据分析、人工智能、自动化脚本等领域。
Python支持多种编程范式,包括面向对象、函数式和过程式编程,具有强大的社区支持和跨平台特性。
[Stream finished]


[Time] Total streaming time: 3.78 seconds
[Time] Time to first token (TTFT): 0.10 seconds
[Speed] Approximate generation speed: 19.30 tokens/second

============================================================
All tests completed!
[Total Time] 110.70 seconds

(/mnt/raid0-0-lv0/llm-fadt-lyh/conda-env-sglang) liyuanhao@user:~$

CUDA_VISIBLE_DEVICES=1 nohup python -m vllm.entrypoints.openai.api_server --model /mnt/raid0-0-lv0/Qwen/Qwen3-8B --tensor-parallel-size 1 --gpu-memory-utilization 0.96 --max-num-seqs 60 --max-model-len 19900 --port 8000 > vllm.txt &

参考,生成新py,分批读取 /mnt/raid0-0-lv0/llm-fadt-lyh/mysql_import/file-path-txt-all/common_report_paths.txt 中的jsonl,提取相关字段,发大模型,符合内容,提取字段保存jsonl,保存到
/mnt/raid0-0-lv0/llm-fadt-lyh/data2-10/report-concept-jsonl-30w

新生成jsonl文件名字和原文件名字一样,一个jsonl一条;使用22个并行,提高效率

参考,生成py,分批导出jsonl文件到/mnt/raid0-0-lv0/llm-fadt-lyh/data2-10/report-tl-jsonl-61w-5tag-embed,文件名字方式 研报id-股票代码-发布日期.jsonl

生成一个py,对比2个文件夹中的研报,找出

python /mnt/raid0-0-lv0/llm-fadt-lyh/mysql_import/show_db_tables.py

cd /mnt/raid0-0-lv0/llm-fadt-lyh/mysql_import
python import_report_embeddings.py

python /mnt/raid0-0-lv0/llm-fadt-lyh/mysql_import/analyze_reports.py
cd /mnt/raid0-0-lv0/llm-fadt-lyh/mysql_import && python analyze_reports.py

cd /mnt/raid0-0-lv0/llm-fadt-lyh/mysql_import
python calculate_report_price_change.py

cd /mnt/raid0-0-lv0/llm-fadt-lyh/mysql_import && python generate_finbert2_from_csv.py

cd /mnt/raid0-0-lv0/llm-fadt-lyh/mysql_import
python train_fadt_rolling.py

默认运行(2021-01-01 至 2024-10-31,6/6/6滑动)

python train_fadt_rolling.py

自定义日期范围

python train_fadt_rolling.py --start 2021-01-01 --end 2025-12-31

窗口配置
python train_fadt_rolling.py --train-months 3 --predict-months 3 --step-months 3

默认配置(1000条/批,9并发)

python generate_qwen_embeddings.py
–csv /mnt/raid0-0-lv0/llm-fadt-lyh/tl-finbert2-fadt-code/extracted_stock_data.csv

自定义配置

python generate_qwen_embeddings.py
–csv /path/to/reports.csv
–batch 1000
–concurrent 9
–output /path/to/results.csv

python /mnt/raid0-0-lv0/llm-fadt-lyh/mysql_import/backtest-local/single_factor_backet_roe-2tu.py

python mysql_to_es_embeddings.py --batch 64 --concurrent 9

# 交互式问答

python es_rag_qa.py

直接查询

python es_rag_qa.py --query “关于新能源行业的发展趋势”

设置返回文档数量

python es_rag_qa.py --query “人工智能投资机会” --top 10

单次回测(原有方式)

python single_factor_backet_roe-2tu.py --run_mode single

并发回测:3、5、10层 × 5、10、20天调仓 = 9个任务

python /mnt/raid0-0-lv0/llm-fadt-lyh/mysql_import/backtest-local/single_factor_backet_roe-2tu.py
–factor_csv /home/liyuanhao/factor_300–processed.csv
–quantiles “3,5,10,15”
–refreshes “1,5,10,20”
–concurrent 22

批量顺序回测

python /mnt/raid0-0-lv0/llm-fadt-lyh/mysql_import/backtest-local/single_factor_backet_roe-2tu.py
–quantiles “5,10”
–refreshes “10,20”
–run_mode batch# 使用默认参数运行
python report_count_factor.py --report-vectors-dir /path/to/report/vectors

自定义参数运行

nohup python report_count_factor.py --report-vectors-dir /mnt/raid0-0-lv0/llm-fadt-lyh/data-all/reports/tl-5tg-embed-finbert2 --output-file factor_results0130.csv --start-date 2017-01-01 --end-date 2025-12-31 --window-days 30 --output-file /home/liyuanhao/factor_300.csv >tl-30.txt &

nohup python report_count_factor.py --report-vectors-dir /mnt/raid0-0-lv0/llm-fadt-lyh/data-all/reports/tl-5tg-embed-finbert2 --output-file factor_results0130-180.csv --start-date 2017-01-01 --end-date 2025-12-31 --window-days 30 --output-file /home/liyuanhao/factor_300.csv >tl-180.txt &

						  cd /home/liyuanhao && python report_count_factor.py \

–report-vectors-dir /mnt/raid0-0-lv0/llm-fadt-lyh/data-all/reports/tl-5tg-embed-finbert2
–output-file /home/liyuanhao/factor_000001_202504.csv
–start-date 2021-01-01
–end-date 2025-12-15
–window-days 90 \

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐