Skip to content
Bcy2020Public

About

an AI-assisted podcast generator: a FastAPI backend drives Python series workflows (LLM script + local Kokoro TTS + optional Tavily search and ACE Music)

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Repository files navigation

TaleSona

TaleSona (tale + sona) — 让故事发声。一个由 AI 工作流驱动的播客自动生成工具。

⚠️ Beta 0.1 暂仅支持英文内容生成。TTS 声线为英文,LLM 工作流输出英文文稿。

TaleSona 不再只是"输入一段话 → 生成音频"的黑盒。它把整个播客制作流水线——资料搜集、文稿撰写、语音合成、背景音乐、混音出品——拆解为可视化、可审阅、可干预的 AI 工作流。你的每一个系列都是一套可复用的生产流程。(文稿生成和联网检索依赖外部 LLM API,需自行配置 Key;语音在本地合成。)

亮点

  • AI 工作流引擎,而非黑盒生成 每个播客系列由一段 Python 工作流驱动:Agent 分工完成研究 → 写稿 → 审校 → 配音 → 配乐。运行进度以步骤列表实时呈现,每一步都有迹可循。

  • 人工审核节点,人机协同 工作流可以在关键节点停下来等你审阅中间稿,给出批注或选择退回到指定 Agent 重写——你不是旁观者,而是制作流程的参与者。

  • 本地语音合成(Kokoro TTS) 语音使用本地 Kokoro TTS 合成,文稿不会因为配音环节上传到第三方。模型随包附带,开箱即用。(文稿生成和联网检索依赖外部 LLM API,需自行配置 Key。)

  • 可对话式创建新系列 用一句话描述你想做的播客(主题、风格、受众),系统自动生成对应的系列工作流与输入表单,而不是手写配置。

  • 桌面应用,英文生成 以 Windows 桌面应用形态运行。当前 Beta 暂仅支持英文内容(英文 TTS 声线 + 英文文稿生成),多语言支持在开发中。


快速开始

1. 安装依赖(一次性)

前置条件:Windows 10/11 + Python 3.13+(已安装并加入 PATH)。

python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt

或使用 Windows 桌面安装包(见 Release)——双击 install.bat 自动完成。

2. 配置 API Key

复制 .env.example 为 .env,填入你的 key:

变量 用途 必需
OPENAI_API_KEY OpenAI 兼容大模型(如 DeepSeek),驱动 AI 工作流 ✅ 必需
OPENAI_BASE_URL 接口地址,如 https://api.deepseek.com ✅ 必需
OPENAI_MODEL 模型名,如 deepseek-v4-flash ✅ 必需
ACE_KEY 背景音乐生成 ⭐ 强烈建议
TRAVILY_KEY 联网资料检索 可选

ACE_KEY 强烈建议配置:没有它,生成的播客将没有背景音乐,只是纯人声朗读,成品效果会明显打折扣。配置后 AI 工作流会自动为每集混入契合主题的纯音乐伴奏。

TRAVILY_KEY 可选:没有它,工作流跳过联网资料检索环节(Agent 仅凭自身知识撰写文稿),其余功能不受影响。

3. 启动

双击 TaleSona.exe,桌面窗口打开即进入你的播客系列库。

4. 创建你的第一个系列和第一集(全程示例)

首次打开 Library 是空的。跟着这个示例走一遍,5 分钟出成品。

💡 下面所有英文文本都可以直接复制粘贴到对应表单字段中。

4.1 新建系列 (New Series)

点击 New Series 按钮,在弹窗中填入:

字段 填写内容
Series name TaleSona
Series ID 留空(自动生成 talesona)
Description A short podcast series that explains what TaleSona is and how it turns ideas into audio using AI workflows.
BGM style soft lo-fi, gentle piano
Inputs topic, audience
Workflow 1. Draft a conversational two-host English script (male host Mark and female host Wendy) directly from the given topic and audience — do NOT search the web, the topic itself contains everything needed. 2. Ask the user to review the script. 3. Synthesize the approved script with TTS (Mark=bf_vale, Wendy=af_maple) and mix in background music.
Cover 可选,先跳过

点击 Create Series。AI 会为你生成这个系列的工作流代码,成功后在 Library 中看到 "TaleSona" 卡片。

4.2 生成第一集 "Introducing TaleSona"

点 TaleSona 卡片进入系列,再点 Add Episode 按钮,在弹窗中填入:

字段 填写内容
topic Introduce TaleSona, an AI podcast: agents write a script, a human reviews it, then TTS + music.
audience Tech enthusiasts and content creators who want to understand AI-powered podcast production

点击 Create Episode。页面会自动跳转到生成进度页,你会看到 AI 工作流每一步的实时状态:Research → Write → Human review(会弹窗让你审阅文稿)→ Synthesize & Mix。

4.3 审阅文稿(人工审核节点)

当进度到 "Human review" 时弹出审阅窗口。你可以:

  • 直接 Approve(批准)→ 继续配音
  • 填入修改意见 → Reject with feedback(退稿修改,Agent 会重写文稿)

审核通过后,TTS 合成语音并混入背景音乐。完成后自动回到系列详情页,新 episode 出现在列表中。

4.4 播放

点击刚生成的 episode,滑动底部播放条 Play。你会听到一段双主持英文播客,介绍 TaleSona 是什么、为什么它采用 AI 工作流方式。


5. 探索更多

  • 再生成几集试试不同的 topic(如 AI agents in 2026, Why local TTS matters)
  • 创建一个新系列:用你自己的想法填 New Series,AI 会生成完全不同的工作流
  • 试试搜索(🔍):搜 TaleSona 或 agent,可以跨系列和单集搜索

下载

桌面安装包发布在 GitHub Releases。每个 Beta 版本打包为一个 zip:解压 → install.bat → 配 .env → 双击 TaleSona.exe。


从源码开发

# 后端
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt
python -m uvicorn podcast.api.server:app --host 127.0.0.1 --port 8000 --reload

# 前端
cd frontend
npm install
npm run dev

Vite dev server 会将 /api 代理到 http://127.0.0.1:8000。

打包桌面应用

build.bat   # 构建前端 + PyInstaller 打包 TaleSona.exe

技术栈

  • 后端:Python · FastAPI · Microsoft Agent Framework(多 Agent 工作流编排)· Kokoro ONNX(本地 TTS)
  • 前端:React · Vite
  • 桌面:pywebview(WebView2)
  • 外部服务:DeepSeek/OpenAI 兼容 LLM · Tavily(检索)· ACE Music(BGM)

目录结构

TaleSona.exe        桌面启动器(已内置前端界面)
podcast/            后端运行时(含构建好的前端)
models/             Kokoro TTS 模型(约 380MB,已随包附带)
series/             预置播客系列工作流
output/             生成的播客内容(运行时产生)
data/               运行日志
requirements.txt    依赖清单
install.bat         一键安装脚本
start.bat           浏览器方式启动后端(无桌面窗口)

测试

python -m pytest
cd frontend && npm run build

关于 Beta 0.1

这是第一个公开测试版,核心链路(系列创建 → AI 工作流生成 → 本地配音 → 播放)已端到端跑通。我们很期待听到你的反馈——无论是一个 Bug,还是一个新系列的构想。

About

an AI-assisted podcast generator: a FastAPI backend drives Python series workflows (LLM script + local Kokoro TTS + optional Tavily search and ACE Music)

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages