【亲测免费】 Graph of Thoughts:利用大型语言模型解决复杂问题的官方实践指南
项目介绍
Graph of Thoughts(GoT) 是一个强大的框架,它源自论文 "Graph of Thoughts: Solving Elaborate Problems with Large Language Models",旨在通过将问题建模为“操作图”(Graph of Operations, GoO),并采用大型语言模型(LLM)作为执行引擎来解决复杂的问题。这个框架设计灵活且可扩展,支持用户不仅采用GoT的新方法解决问题,还能实现类似于Chain of Thought(CoT)或Tree of Thoughts(ToT)等先前方法的操作图。
快速启动
环境准备
确保您的Python环境是3.8或更高版本。若要安装graph_of_thoughts库以直接使用,执行以下命令:
pip install graph_of_thoughts
对于开发者,想要修改源码,则需克隆仓库并以编辑模式安装:
git clone https://github.com/spcl/graph-of-thoughts.git
cd graph-of-thoughts
pip install -e .
配置语言模型
您需要访问一个大型语言模型。参照控制器的README文件配置您选择的LLM,通常这涉及设置API密钥等。
示例代码:排序问题
假设已按上述步骤配置完毕,下面展示了如何使用类似CoT的方式处理一个列表排序问题:
from examples.sorting.sorting_032 import SortingPrompter, SortingParser, utils
from graph_of_thoughts import controller, language_models, operations
# 定义待排序列表
to_be_sorted = "[0, 2, 6, 3, ...]"
# 初始化操作图
gop = operations.GraphOfOperations()
gop.append_operation(operations.Generate())
gop.append_operation(operations.Score(scoring_function=utils.num_errors))
gop.append_operation(operations.GroundTruth(utils.test_sorting))
# 配置语言模型,这里简化处理,实际中应指向有效的配置文件和模型名
lm = language_models.ChatGPT("config.json", model_name="chatgpt")
# 创建控制器并运行
ctrl = controller.Controller(lm, gop, SortingPrompter(), SortingParser(),
{"original": to_be_sorted, "current": "", "method": "cot"})
ctrl.run()
ctrl.output_graph("output_cot.json")
应用案例和最佳实践
此框架特别适用于处理那些需要逐步推理的问题,如数学问题求解、逻辑分析、甚至编程问题的辅助思考。最佳实践中,建议从简单的案例入手,如上述的排序示例,逐步增加问题的复杂度,利用框架的灵活性调整操作图来适应特定问题需求。
典型生态项目
虽然直接关联的“典型生态项目”信息未在给定内容中详细列出,但可以想象,在自然语言处理、AI辅助编程、教育辅导软件以及复杂的决策支持系统中,GoT这样的框架可以找到它的应用场景。开发者和研究者可以基于GoT构建自己的解决方案,例如,为特定行业定制智能助手,或者在自动代码审查中应用,通过自定义图操作来评估代码质量。
请注意,为了实际应用这些指导原则,您需要详细阅读项目中的文档,特别是关于如何配置不同的语言模型和设计适合自己需求的图操作部分。此外,随着人工智能技术的发展,相关依赖和最佳实践可能会持续更新,因此保持对项目最新动态的关注是很重要的。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust098- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
MiMo-V2.5-ProMiMo-V2.5-Pro作为旗舰模型,擅⻓处理复杂Agent任务,单次任务可完成近千次⼯具调⽤与⼗余轮上 下⽂压缩。Python00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
Kimi-K2.6Kimi K2.6 是一款开源的原生多模态智能体模型,在长程编码、编码驱动设计、主动自主执行以及群体任务编排等实用能力方面实现了显著提升。Python00
MiniMax-M2.7MiniMax-M2.7 是我们首个深度参与自身进化过程的模型。M2.7 具备构建复杂智能体应用框架的能力,能够借助智能体团队、复杂技能以及动态工具搜索,完成高度精细的生产力任务。Python00