PyGai 连接器 UI 交互指南

本指南旨在演示如何通过 PyGai 连接器的 Web 管理界面,无需编程即可配置和管理数据。这些配置将与 Gai 应用的定时任务(Cron Jobs)协同,实现自动化数据录入与处理流程。

Workflow:PyGai --1--> Gai --2--> PyGai --3--> Page

stage description
PyGai -> Gai 输出提示语
Gai -> PyGai 回传图文内容
PyGai -> Page 数据再处理

T1-内容生成策略

PyGai 连接器支持以下两种主要内容生成策略,以适应不同的业务需求:

  • 批量内容生成 (Batch Content Generation)

    • 特点: 同一主题下,针对单一或相似提示词进行大量内容生产。侧重于效率和数量。
    • 场景示例:
      • 标准化文本创作:如大规模学生作文测试、产品评论批量生成。
      • 重复性内容填充:如为单个产品变体生成描述,或针对特定观点批量生成支持性评论。
  • 多样化内容拓展 (Diverse Content Expansion)

    • 特点: 同一主题下,针对不同提示词进行多维度内容创作。侧重于内容广度、视角多样性或主题细分。
    • 场景示例:
      • 多角度市场推广:为同一产品从不同用户角色、功能优势等角度生成推文。
      • 观点引导与纠偏:针对特定议题,设计不同视角的评论或回复,以引导舆论或纠正误解。
      • 系列内容创作:基于同一主题下不同子命题生成系列文章(如“梅兰菊竹”系列)。

T3-核心概念与术语

PyGai 连接器中的核心概念和术语如下,它们在 UI 交互中对应特定的管理模块:

核心实体与 UI 路径速览

alias page
Topic /admin/topic/
Prompt /admin/prompt/
Content /admin/contenet/
Directory /admin/directory/

UI 操作速记

这些速记示例用于简化文档中的 UI 操作描述,用户在实际操作中应通过 Web 管理界面进行。

  • 配置提示词: new, /admin/prompt/; genTxt:yes, quota: 10, text: hello.
  • 创建主题: new, /admin/topic/; name: ai demo.
  • 创建系统指令: new, /admin/instruct/; name: 角色代入-普高教师..., instruction: 你是一名语文老师...

UI 操作截图示例

PyGai系统指令列表 PyGai系统指令编辑


T4-建站助手实操指南

本节将引导用户通过 PyGai UI 配合 MkDocs,搭建并管理 AI 驱动的静态网站。

先决条件

  • PyGai 管理后台: 访问 http://127.0.0.1:5050/login/ 进行登录;
    默认帐户和密码可见config\setting.ini[USER]
  • MkDocs 安装: 请确保您的环境中已安装 MkDocs。 shell pip install mkdocs-publisher pip install mkdocs mkdir -p ~/Documents/sites mkdocs new ~/Documents/sites/MyWebSite

基础配置

  • 创建发布目录 (Directory): 在 PyGai UI 中配置用于存放静态网站文件的目录。 new, /admin/directory/; name: MyWebSite, Directory: ~/Documents/sites/MyWebSite/docs/
  • 创建内容主题 (Topic): 定义内容分类,用于组织相关的 AI 生成任务。 new, /admin/topic/; name: Wordsmith

T4.1- 示例任务1:批量写作测试

写作测试,30个学生,同写一个命题作文,“明日复明日,明日何其多”。

  • 思路梳理

    • 场景:批量内容生成,同主题,同提示词,侧重数量。
    • 主题:命题作文测试 (Wordsmith)
    • 提示词内容:人曰“明日复明日,明日何其多”,作为一个中学生,你该如何呢?请依题作文,自选角度,自拟标题,体裁不限,不少于500字。
    • 生成数量:30篇
  • 流程操作

    • 配置提示词

      new, /admin/prompt/; quota: 30, genTxt:yes, enabled:yes, intervalName:hourly, topic: Wordsmith, directory: MyWebSite,

      text: 人曰“明日复明日,明日何其多”,作为一个中学生,你该如何呢?请依题作文,自选角度,自拟标题,体裁不限,不少于500字。

    • 定时任务集成 (Gai Cron Job)

      • 定义全局常量 (Variables)

        scope: global name: _G_APISRV value: http://127.0.0.1:5050 name: _G_APIJWT value: eyJhbGciOiJIUzUxMiIsIn...

      • 配置 HTTP 请求 (Get Prompt)

        name: _HTTP_MyWebSite_GetPrompt method: get url: {{_G_APISRV}}/aiprompt/output/ header: Authorization: Bearer {{_G_APIJWT}} param: dirId=1&dirName=MyWebSite

      • 配置 HTTP 请求 (Post Content)

        name: _HTTP_MyWebSite_PostContent method: post url: {{_G_APISRV}}/aicontent/input/ header: Authorization: Bearer {{_G_APIJWT}}

      • 创建定时作业 (Cron Job)

        name: _CRON_MyWebSite_HourlyWordsmith time: 0 * * * * input: http; _HTTP_MyWebSite_GetPrompt output: http; _HTTP_MyWebSite_PostContent empty input Silenced: Yes

T4.2- 示例任务2:多样化写作测试

写作测试,4个学生,有“梅兰菊竹”4种植物,请分别各选1种作文。

  • 思路梳理

    • 场景:多样化内容拓展,同主题,异提示词,侧重提示词多样性。
    • 主题:命题作文测试 (DailyWordsmith)
    • 提示词内容:为“梅兰菊竹”四种植物分别设计一个作文命题,各生成1篇。
  • 流程操作

    • 配置提示词 (梅)

      new, /admin/prompt/; quota: 1, genTxt:yes, enabled:yes, intervalName:hourly, topic: DailyWordsmith, directory: MyWebSite,

      text: 梅花香自苦寒来——我的学习之路。请依题作文,体裁为记叙文或议论文,不少于500字,以梅花精神为线索,描写学习的艰辛与收获,或探讨学习的毅力。

    • 配置提示词 (兰)

      new, /admin/prompt/; quota: 1, genTxt:yes, enabled:yes, intervalName:hourly, topic: DailyWordsmith, directory: MyWebSite,

      text: 初夏的兰花。请依题作文,体裁为记叙文或描写文,不少于500字,描写初夏时节兰花绽放的景象,重点在于细致地描写兰花的姿态、花色、以及那独特的幽香,以及给人带来的感受。

    • 配置提示词 (菊)

      new, /admin/prompt/; quota: 1, genTxt:yes, enabled:yes, intervalName:hourly, topic: DailyWordsmith, directory: MyWebSite,

      text: 菊花,秋天的使者。请依题作文,体裁为记叙文,不少于500字,描写一次观赏菊花活动的经历,感受菊花所带来的喜悦和宁静。

    • 配置提示词 (竹)

      new, /admin/prompt/; quota: 1, genTxt:yes, enabled:yes, intervalName:hourly, topic: DailyWordsmith, directory: MyWebSite,

      text: 竹的挺拔,我的追求。请依题作文,体裁为议论文或散文,不少于500字,探讨竹子挺拔向上、不畏艰难的精神,并与个人的理想追求联系起来。可以融入对“立志”、“奋斗”等概念的思考。

    • 定时任务集成 (Gai Cron Job)

      • 定义全局常量 (Variables)

        text scope: global name: _G_APISRV value: http://127.0.0.1:5050 name: _G_APIJWT value: eyJhbGciOiJIUzUxMiIsIn...`

      • 配置 HTTP 请求 (Get Prompt)

        text name: _HTTP_MyWebSite_GetPrompt method: get url: {{_G_APISRV}}/aiprompt/output/ header: Authorization: Bearer {{_G_APIJWT}} param: dirId=1&dirName=MyWebSite

      • 配置 HTTP 请求 (Post Content)

        text name: _HTTP_MyWebSite_PostContent method: post url: {{_G_APISRV}}/aicontent/input/ header: Authorization: Bearer {{_G_APIJWT}}

      • 创建定时作业 (Cron Job)

        text name: _CRON_MyWebSite_DailyWordsmith time: 0 0 * * * input: http; _HTTP_MyWebSite_GetPrompt output: http; _HTTP_MyWebSite_PostContent empty input Silenced: Yes