For the complete documentation index, see llms.txt. This page is also available as Markdown.

Podcastfy

Transform any content into engaging AI-generated podcasts using TensorX models.


What is Podcastfy?

Podcastfy is an open-source Python package that transforms multi-modal content (text, images, websites, PDFs, YouTube videos) into engaging, multi-lingual audio conversations. It's an open-source alternative to NotebookLM's podcast feature.


Prerequisites

  • Python 3.11 or higher

  • ffmpeg installed (pip install ffmpeg or system package)

  • A TensorX API key (sign up here)


Installation


Quick Start

Python

CLI


Configuration

Environment Variables

Create a .env file in your project root:

Using TensorX for Transcript Generation

Podcastfy uses LiteLLM for LLM support. To use TensorX models:

Model format: Use openai/ prefix followed by the TensorX model name. This tells LiteLLM to route requests to an OpenAI-compatible endpoint.


LiteLLM Model Format

Podcastfy uses LiteLLM which requires specific model naming for OpenAI-compatible APIs:

Examples

TensorX Model
LiteLLM Format

z-ai/glm-5.1

openai/z-ai/glm-5.1

minimax/minimax-m2.5

openai/minimax/minimax-m2.5

moonshotai/kimi-k2.5

openai/moonshotai/kimi-k2.5

deepseek/deepseek-chat-v3.1

openai/deepseek/deepseek-chat-v3.1

deepseek/deepseek-r1-0528

openai/deepseek/deepseek-r1-0528

meta-llama/llama-3.3-70b-instruct

openai/meta-llama/llama-3.3-70b-instruct


Use Case
Model
Notes

General podcasts

deepseek/deepseek-chat-v3.1

Fast, great conversational quality

In-depth analysis

deepseek/deepseek-r1-0528

Better reasoning for complex topics

Technical content

z-ai/glm-5.1

Good for code and technical discussions

Vision content

moonshotai/kimi-k2.5

Image understanding

Long content

meta-llama/llama-4-maverick

Long document processing


Text-to-Speech with TensorX

Configure TensorX TTS for audio generation:

Environment Variables for TTS


Customization

Conversation Style

Customize the podcast conversation:

CLI with Custom Config

Create a custom_config.yaml:

Run with:


Generate from Multiple Sources

Multiple URLs

From PDF Files

From Images


Longform Podcasts

Generate longer podcasts (20-30 minutes):

Customize Longform Length


Transcript Only

Generate just the transcript without audio:

CLI


Multilingual Podcasts

Generate podcasts in different languages:

Supported languages depend on the TTS model capabilities.


Troubleshooting

API Key Errors

  1. Verify your .env file contains:

  2. Test your API key:

Model Not Found

Ensure you're using the correct LiteLLM format:

  • openai/deepseek/deepseek-chat-v3.1

  • deepseek/deepseek-chat-v3.1

Audio Generation Fails

  1. Ensure ffmpeg is installed: ffmpeg -version

  2. Check TTS configuration in your environment

  3. Verify API key has sufficient credits

Content Extraction Fails

  1. Check the URL is accessible

  2. For PDFs, ensure the file path is correct

  3. For YouTube, verify the video is public


Complete Example


Resources


See Also

  • Audio API - TensorX text-to-speech and speech-to-text

  • API Examples - Code examples for TensorX API

  • SurfSense - Another tool with podcast generation

  • Open Notebook - NotebookLM alternative with podcasts

Last updated

Was this helpful?