SuperAPI AI 工具集

openbb-app-builder

编程与开发

查看项目

更新于 10-16 03:05

技能介绍

用途:为 OpenBB Workspace 构建自定义后端与小组件,适用于创建 OpenBB 应用、把 Streamlit/Gradio 应用转换过来,或搭建仪表盘。

工作模式:标准模式(默认,逐阶段确认);快速模式(触发词 quick mode、fast、minimal,采用合理默认值、仅最终确认一次);参考模式(用户提供代码片段或要求“转换这个”“像这个应用”,自动分析代码并映射到 OpenBB);详细模式(verbose、teach me、explain,偏教学解释)。模式依据用户首条消息中的触发词判断,不明确时用标准模式。

流水线阶段:1 需求访谈(交互式提问或分析参考代码,输出 APP-SPEC.md);2 定义每个小组件的类型、参数、列定义和数据格式;3 用 40 列网格设计标签页与布局,参数组名称必须遵循“Group 1”“Group 2”格式,自定义名称会静默失败;4 生成实现计划 PLAN.md;5 生成文件:main.py(FastAPI 应用)、widgets.json、apps.json、requirements.txt、.env.example;6 校验(先做模式校验,再询问是否启动后端并运行 validate_endpoints.py 校验接口,报错最多重试 3 次);6.5 浏览器校验(针对 OpenBB Workspace 实际模式,推荐使用);7 可选的浏览器测试。

小组件类型:table、chart(Plotly)、metric、markdown、newsfeed。实践建议包括:除非计算耗时超过 5 秒,否则不设 runButton: true;metrics 高度 h=4-6,表格 h=12-18,图表 h=12-15;widgets.json 必须是字典且以小组件 ID 为键;apps.json 必须是数组,通过 /apps.json 端点提供;Plotly 图表不加标题;表格元数据用 data.table.columnsDefs。

使用示例:cd 应用目录后执行 pip install -r requirements.txt,再运行 uvicorn main:app --reload --port 7779;在 OpenBB 中通过 Settings → Data Connectors → Add: http://localhost:7779 添加。

限制与未提供信息:资料未提供收费、价格、平台支持范围或实际效果数据;校验与测试依赖 OpenBB Workspace,静态校验无法覆盖全部问题,需结合浏览器校验。