14 🏅[懒人必看章节] 利用ai来掌握 funboost 的 正确方式
开门见山,想靠ai用好 funboost ,只有这一条路最正确:
1.打开具备1000k token上下文的大模型官网网页,推荐使用gemini 3.0pro以上,deepseek v3.2以上,qwen3.5以上
打开 Google AI Studio https://aistudio.google.com/。(gemini是最早支持1000k token上下文的大模型)
注意:要用google ai studio网址,不要用gemini官网 https://gemini.google.com/ ,gemini官网的gemini 3.0pro模型在2026年1月实测对funboost教程文档推理,任然幻觉严重。或者打开 deepseek 官方网页, chat.deepseek.com (2026年deepseek已经支持1000k token上下文)
或者打开 qwen 官方网页, chat.qwen.ai (2026年qwen3.5已经支持1000k token上下文)
使用腾讯ima知识库
2.丢入
funboost_all_docs_and_codes.md。3.别在 IDE 里问,别在gemini官网问,否则 别怪AI 不行,是你不行!
如果你不能科学上网没有梯子,其他的也介绍了一些ai使用方式,请你务必看完本章节,别偷懒。
14.0 🤬 [高能预警]在此章节最开头,先允许我用最恶毒的语言来刺激骂醒一部分又懒又蠢的懒癌患者的大脑皮层!
说明:
此段内容不是针对所有人,没有针对屏幕前的你,我要骂的是反复多次要求让他去仔细看文档14章节,他还是不愿意认真看的这种 恨铁不成钢的超级无敌大懒猪。
致部分无可救药的懒癌晚期患者:
先让我骂一下一部分人是 懒虫中的懒虫,蠢猪中的蠢猪,傻屌中的傻屌,是 大脑皮层光滑如镜的单细胞生物,是 浪费空气的造粪机器,是 无可救药的伸手党巨婴!, 脖子上的脑袋纯粹是为了显高,视网膜纯粹是为了美观 凸(艹皿艹 )
如果不用最恶毒下流的语言来写教程,有些人看教程时候简直是在打瞌睡,要么心不在焉,要么企图偷懒一目十行,甚至大段大段地跳过,连教你怎么偷懒用ai掌握funboost都大段跳过!
你连20分钟看第14章内容的时间都没有吗?教你偷懒的教程你还要偷懒。
现在不像10年前,需要在大冬天坐冷板凳熬夜苦读 Django/Celery 几千页教程,现在有 AI ! 你害怕吃苦、想偷懒,你就用 AI,AI 不怕吃苦!但是有的极品懒癌,连这一章的内容都不仔细阅读,连教你怎么偷懒的章节都要快速一目十行扫过?你的脑子是装饰品吗?
14.0.1 🧠 脑残行为大赏
虽然我都说了可以用 AI 来高效、无幻觉、准确掌握 funboost 任何公开教程和源码细节,而且专门写了这个章节教程。
但一部分 懒虫中的极品懒虫,蠢猪中的极品蠢猪,连这章都不仔细读!
有问题来问我,我问:“为什么不用 AI 呢?建议先看下文档第14章。”
他还敢顶嘴说**“已经看过文档第14章”**。
结果我仔细追问,发现他完全是 瞎几把乱用 AI!
教程中明确说了哪些是 大错特错 的用 AI 掌握 funboost 的方式,他偏偏还是这样用!这种做法极其浪费时间,让我非常的生气恼火! 😡
我再仔细问他是怎么用的:
他说直接问 AI 的;
或者说已经把文档传给 AI 了。
再问细节,他是用原生不支持1000k token上下文的模型提问的;
有的说在 Cursor / Trae / Qoder 这些 IDE 里面提问的。
有的说在 Claude-code / Gemini-cli 这些命令行里面提问的。
有的说用的 gemini-flash ,而没有按教程写的用 gemini-pro
有的人使用 https://gemini.google.com ,而不是教程规定的 https://aistudio.google.com
此章节里面已经反复明确说了,这些全踏马是错误的让 AI 学习 funboost 的方式!你是瞎了吗?
14.0.2 🚫 别拿通用框架的经验来羞辱我的智商
如果你是提问 AI:“怎么使用 FastAPI / Django / Flask / Requests?” 这些大名鼎鼎的 Python 框架,任何 AI 大模型只要不是太水,你想怎么使用都可以,几乎都没问题。你不需要我来充当 AI 教师爷教你怎么用 AI 掌握热门顶流框架。
👉 但是! 如果你想用 AI 掌握 funboost,就 必须按照我说的方式来!
如果你不按我说的方式来,AI 绝无可能 正确无幻觉掌握得了 funboost,到时候你还怪 AI 不行?是你踏马的不行!
14.0.3 ❌ [严重警告] 懒癌患者请把下面这几点刻在脑门上!
我踏马再在这里对一部分懒癌患者,把此章节内容中的错误使用方式再提前重复啰嗦一次:
❌ 错误一:不上传我指定的
funboost_all_docs_and_codes.md文档,直接在任何 不支持1000k token上下文的模型官网网页提问funboost知识。这是最错误的方式❌ 错误二:在
Cursor/Trae/Qoder这类 AI IDE 的聊天框里面@funboost_all_docs_and_codes.md这个文件。这也是大错特错的! 原因我反复说了自己去细看——因为文档太长,AI IDE 不会乖乖全量阅读,否则厂商会血亏!❌ 错误三:在
Claude-code和Gemini-cli这种有 1M 上下文的命令行 AI 中,@funboost_all_docs_and_codes.md这个文件。这也是错误方式! 原因我反复说了自己去细看,因为文档太长 AI agent 不会乖乖全量阅读,厂商亏不起!
14.0.4 ✅ ai掌握funboost的唯一正确的路径
听好了,只有同时满足以下 5 个条件,AI 才能真正掌握 funboost:
按我说的做(别自作聪明);
使用经过我实践实测的工具;
大模型必须有 原生 1000k 上下文或少部分rag平台;
可以 强迫投喂
funboost_all_docs_and_codes.md文档,投喂长文档后, AI 是 全量乖乖阅读推理 的(必须是乖乖全量阅读推理,这一点非常非常核心重要,你在cursor trae中提问长文档,那agent就是分多步骤阅读和检索关键字,又慢又不准,因为ai ide害怕全量阅读花太多tokens导致亏本)。
少一个条件,你就别来问我 funboost怎么使用,funboost为什么报错!
14.0.5 🤬 当我问你怎么使用ai时候,你最少要回答200字到底是怎么使用ai的,别踏马就简单的说:"我已经用ai来问funboost问题了"
因为很多恨铁不成钢的懒虫,即使我反复要求他先仔细阅读第14章节,他还是不仔细阅读此章节的内容,这种懒虫我见过太多了
所以我要求你仔细回答是如何使用ai的,你要回答的包括:
你是在网页还是ai ide问的,如果是网页请把网址发下
你用的是什么大模型
你上传文档了没,如果上传了文档请把文档名发下 ,我要确定你上传的是不是我指定的文档。(因为有的懒虫一意孤行不看此章节教程)
你是怎么问的,如果可能,把提问问题也发一下。 【我要复制你的提问,我现在非常喜欢挑战nb_ai_context的能力上限,我要看看ai是不是真的掌握不了,还是我文档提示词工程的问题,
还是你不按照教程第14章说的做。 (根据过往经验,几乎用户所有的问题,我直接在ai中输入并提问,ai都可以回答正确,是用户太几把懒了不认真看第14章,还踏马怪ai不行) 】
14.0b 推荐一个在ai时代 神级别黑科技掌握任意非知名的it项目的方式 nb_ai_context
funboost 合并文档 funboost_all_docs_and_codes.md 就是使用 nb_ai_context 生成的
用户也可以在 nb_ai_context 的readme里面去了解,为什么冷门it项目必须使用特殊的手段才能让ai无幻觉掌握用法和细节。
如果你是问ai ,怎么使用fastapi/django/flask/requests 这些大名鼎鼎的python框架 ,任何ai只要不是太水,几乎都没问题,不需要 nb_ai_context ,
不需要我教你怎么用ai 掌握 flask django fastapi。
nb_ai_context 不仅可以生成funboost合并文档,让ai无幻觉掌握用法和细节, 也适用于任何冷门三方框架以及个人或公司的私有代码项目。
nb_ai_context 尤其是对python项目效果更佳,因为对python文件有专门额外的 ast解析。
14.0c 为什么要专门写第14章这个教程?
有的人太懒惰了,不愿意吃苦阅读 funboost 的 readthedocs 教程,或者不清楚 funboost 实现的背后细节原理且不愿意分析框架源码,那就使用 ai 来替你搞定一切.
第一性原理:为什么要写第14章这个章节文档?
因为无论是使用cursor trae qoder 这些ide,还是在各个大模型官方网页直接问funboost问题,都是大错特错的方式,必须提供完整的教程和源码上下文,ai大模型才能减少幻觉。
14.0d 各个 ai 掌握funboost 能力评分
推荐以下几方式用于掌握funboost: (大模型变化进步非常快,有可能会有改变,所以以下评分仅供参考)
大模型 |
网址 |
评分 |
简要评价 |
|---|---|---|---|
gemini-3.0pro |
90 |
最强,知我心者gemini也。 |
|
ima知识库 |
[腾讯ima+funboost知识库] |
80 |
很强,rag能快速检索找到相关用法, |
qwen3.5 |
85 |
2026年2月 qwen3.5 支持1000k token上下文, 直接上传文档 |
|
deepseek |
95 |
deepseek官网 2026年以后原生支持1000k token上下文, 直接上传文档 |
funboost_all_docs_and_codes.md 文档说明
14.1.1 一定要上传markdown文档再提问
不要直接在ai大模型的网页或者app提问funboost知识
直接在网页提问,除了最简单的demo,写稍微深入一点的, 幻觉率太高了,所有ai几乎100%会意淫瞎造 funboost
不存在的 入参 /类 /函数. 甚至有的国产水货大模型,连最基础简单funboost demo都会幻觉乱写。
14.1.2 funboost 的 markdown文档地址说明
funboost 文档是托管在 readthedocs 网站,原始教程是分为了多个markdown文件
在github中有合并的markdown,分为2个文件.
一个是 funboost_all_docs.md , 这个是把 教程markdown文件合并成1个文件,方便一次性丢给ai,免得要多次上传。
另一个是 funboost_all_docs_and_codes.md , 这个是包含了所有教程 + 所有 funboost 框架源码 ,更推荐把这个markdown丢给 ai
14.1.3 funboost的ai markdown文档是使用神级别 ai上下文生成工具 nb_ai_context 生成的
为什么 funboost的这个合并单一markdown传给ai后,ai如此强悍无幻觉,一方面是要选对正确的ai大模型和方式,另一方面是因为 nb_ai_context 生成的上下文太好了。
安装 nb_ai_context: pip install nb_ai_context
nb_ai_context 可以对任何it项目代码打包生成一个单一的markdown,传给ai后,效果非常强,吊打最知名的repomix。
14.1.4 公布 funboost ai上下文 markdown 文档的生成方式
from nb_ai_context import AiMdGenerator,NbPath
project_name="funboost"
project_root=fr"D:\codes\{project_name}"
project_summary = """
- `funboost` 是python 全功能分布式函数调度框架
- `funboost.faas` 是funboost的战略级核武器。使函数调度框架产生架构质变:从 Worker 到 Service
- 以下一定要记住,最最重要的 类和函数如下:
- @boost(BoosterParams(...)) 任意普通函数加上装饰器,变成分布式函数
- BoosterParams 装饰器入参控制大全,一定要学习这个类的所有入参配置;ai绝对不允许胡编乱造源码api和教程中不存在的BoosterParams字段入参。
- BrokerEnum:支持 40+ 种消息队列中间件。
- BoostersManager 管理分布式函数,高阶用法可能需要用到,例如启动一组消费函数,启动所有消费函数等。
- ApsJobAdder 类, 是定时任务的最重要使用方式的类
- ConcurrentModeEnum:funboost支持的并发模式。
"""
boost_spider_summary = """
- **`boost_spider` = `funboost` 的超跑引擎 + 一套为爬虫量身打造的瑞士军刀。所有仿scrapy api爬虫框架都还是处在变花样造一辆马车**
- `boost_spider` 是增加了3个爬虫常用类,RequestClient 和 SpiderResponse 和 DatasetSink, 由funboost 驱动调度和并发。
"""
ai_md_codes = AiMdGenerator(
r"D:\codes\nb_ai_context\markdown_gen_files_git_ignore\ai_md_files\funboost_all_codes.md"
).set_project_propery(project_name=project_name, project_root=project_root)
ai_md_docs = AiMdGenerator(
r"D:\codes\nb_ai_context\markdown_gen_files_git_ignore\ai_md_files\funboost_all_docs.md"
).set_project_propery(project_name="funboost_docs", project_root=r'D:\codes\funboost_docs')
funboost_most_core_source_code_file_list=[
"funboost/__init__.py",
"funboost/core/booster.py",
"funboost/core/func_params_model.py",
"funboost/constant.py",
"funboost/timing_job/timing_push.py",
"funboost/funboost_config_deafult.py",
"funboost/core/current_task.py",
"funboost/core/cli/discovery_boosters.py",
"funboost/core/msg_result_getter.py",
"funboost/publishers/base_publisher.py",
"funboost/consumers/base_consumer.py",
"funboost/core/active_cousumer_info_getter.py",
]
(
ai_md_codes
.clear_text()
.add_ai_reading_guide()
.add_project_summary(
project_summary=project_summary,
most_core_source_code_file_list=funboost_most_core_source_code_file_list)
.add_project_summary(
project_summary=boost_spider_summary,
project_root=r"D:\codes\boost_spider",
most_core_source_code_file_list=[
"boost_spider/__init__.py",
"boost_spider/http/request_client.py",
"boost_spider/sink/dataset_sink.py",
"boost_spider/sink/json_sink.py",
])
.merge_from_dir(
relative_dir_name='examples',
use_gitignore=True,
as_title=f"{project_name} examples",
# 只包含 .py 和 .md 文件
should_include_suffixes=[".py", ".md", ".html"],
# 排除 __pycache__ 目录和特定的测试文件
excluded_dir_name_list=[],
)
.merge_from_dir(
relative_dir_name=project_name,
use_gitignore=True,
as_title=f"{project_name} codes",
# 只包含 .py 和 .md 文件
should_include_suffixes=[".py", ".md", ".html"],
# 排除 __pycache__ 目录和特定的测试文件
excluded_dir_name_list=[
r"funboost\utils\dependency_packages",
r"funboost\utils\dependency_packages_in_pythonpath",
r"funboost/utils/func_timeout",
r"funboost\funboost_web_manager\static",
r"funboost/concurrent_pool/backup"
],
)
.merge_from_dir(
project_root=r"D:\codes\boost_spider",
relative_dir_name="boost_spider",
use_gitignore=True,
as_title="boost_spider codes",
# 只包含 .py 和 .md 文件
should_include_suffixes=[".py", ".md", ".html"],
# 排除 __pycache__ 目录和特定的测试文件
excluded_dir_name_list=[],
)
.get_textfile_info(is_show_info=True)
)
(
ai_md_docs
.clear_text()
.add_ai_reading_guide()
.add_project_summary(
project_summary=project_summary,
project_root=r"D:\codes\funboost",
most_core_source_code_file_list=funboost_most_core_source_code_file_list
)
.add_project_summary(
project_summary=boost_spider_summary,
project_root=r"D:\codes\boost_spider",
most_core_source_code_file_list=[
"boost_spider/__init__.py",
"boost_spider/http/request_client.py",
"boost_spider/sink/dataset_sink.py",
"boost_spider/sink/json_sink.py",
])
.merge_from_dir(
project_root=r"D:\codes\funboost",
relative_dir_name='examples',
use_gitignore=True,
as_title=f"{project_name} examples",
# 只包含 .py 和 .md 文件
should_include_suffixes=[".py", ".md", ".html"],
# 排除 __pycache__ 目录和特定的测试文件
excluded_dir_name_list=[],
)
.merge_from_dir(
project_root=r"D:\codes\funboost_docs",
relative_dir_name=r"source\articles",
use_gitignore=True,
as_title="funboost docs",
# 只包含 .py 和 .md 文件
should_include_suffixes=[".md"],
# 排除 __pycache__ 目录和特定的测试文件
excluded_dir_name_list=[],
)
.merge_from_files(
relative_file_name_list=["README.md"],
project_root=r"D:\codes\boost_spider",
as_title="boost_spider readme",
)
.get_textfile_info(is_show_info=True)
)
ai_md_docs_and_codes = NbPath(r'D:\codes\nb_ai_context\markdown_gen_files_git_ignore\ai_md_files','funboost_all_docs_and_codes.md').clear_text().merge_text_from_files([ai_md_docs,ai_md_codes])