Spaces:
Running
Running
Ling & Ring Playground - Development TODO
任务: 实现代码生成 Tab (tab_code.py)
1. UI 构建
- 在
tab_code.py中创建create_code_tab函数。 - 添加
gr.Radio组件,提供 "静态页面" 和 "Gradio 应用" 选项。 - 添加
gr.Textbox作为用户 Prompt 输入框。 - 添加
gr.Button用于触发生成。 - 添加
gr.Code组件用于显示生成的源代码。 - 添加
gr.HTML组件用于实时预览。
2. 后端逻辑
- 为 "静态页面" 编写 System Prompt。
- 为 "Gradio 应用" 编写 System Prompt。
- 实现按钮点击事件的处理函数。
- 静态页面逻辑:
- 调用 Ring 模型生成 HTML。
- 将返回的 HTML 字符串直接更新到
gr.HTML组件。
- Gradio 应用逻辑:
- 调用 Ring 模型生成 Python 代码。
- 将代码保存到临时文件。
- 使用
subprocess在后台启动独立的 Gradio 应用。 - 捕获子进程输出,解析出本地 URL。
- 将 URL 加载到
gr.HTML的<iframe>中。 - 实现子进程管理(启动/终止)。
3. 应用整合
- 在
app.py中导入create_code_tab。 - 在
gr.Blocks中添加一个新的gr.Tab("代码生成")。 - 在新 Tab 中调用
create_code_tab()。