Skip to main content

LLM-powered meeting transcription and summarization tool.

Project description

🎙️ TransMeet — AI-Powered Meeting Summarizer

Turn your meeting recordings into clear, structured minutes using LLMs like Groq Whisper and Google Speech Recognition.


🚀 Features

  • Audio Transcription — Automatically convert .wav or .mp3 files into text
  • 🧠 LLM-Powered Summarization — Generate concise and structured meeting minutes
  • 🔍 Groq & Google Support — Choose between Groq Whisper models or Google Speech API
  • 🪓 Automatic Chunking — Splits large files intelligently for smoother transcription
  • ⚙️ Fully Customizable — Pick your preferred transcription and summarization models
  • 🧾 CLI & Python API — Use it from the terminal or integrate in your Python workflows
  • 📁 Clean Output — Saves transcripts and summaries neatly in your desired folder

📦 Installation

pip install transmeet

Dependencies

sudo apt-get update && sudo apt-get install -y ffmpeg gcc && sudo apt-get clean && sudo rm -rf /var/lib/apt/lists/*

🔐 Setup

Set your GROQ API Key/OPENAI API Key in your environment variables.

export GROQ_API_KEY=your_groq_api_key

To make this permanent:

echo 'export GROQ_API_KEY=your_groq_api_key' >> ~/.bashrc

If using OPENAI, set the OPENAI_API_KEY similarly. For Google Speech, no API key is needed; it uses the default model.


🧑‍💻 How to Use

✅ Option 1: Import as a Python Module

from transmeet import generate_meeting_transcript_and_minutes

generate_meeting_transcript_and_minutes(
    meeting_audio_file="/path/to/audio.wav",
    output_dir="complete_path_to_output_dir/",
    transcription_client="groq",  # or "openai"
    transcription_model="whisper-large-v3-turbo", # change as per your need
    llm_client="groq",  # or "openai"
    llm_model="llama-3.3-70b-versatile", # change as per your need
)

This will save two files in your output directory:

  • transcription_<timestamp>.txt
  • meeting_minutes_<timestamp>.md

🔧 Option 2: Use the CLI

🔹 Basic Usage (Default: GROQ)

transmeet -i /path/to/audio.wav -o output/

🔸 Advanced Usage

transmeet \
  -i /path/to/audio.wav \
  -o output/ \
  --transcription-client groq \
  --transcription-model whisper-large-v3-turbo \
  --llm-client groq \
  --llm-model llama-3.3-70b-versatile \

🗂️ Output Structure

output/
├── transcriptions/
│   └── transcription_20250510_213038.txt
├── meeting_minutes/
│   └── meeting_minutes_20250510_213041.md

🧪 Supported Formats

  • .wav
  • .mp3

⚙️ CLI Options

Argument Description
-i, --audio-path Path to the input audio file
-o, --output-dir Output directory (default: output/)
--transcription-client groq or google (default: groq)
--transcription-model e.g., whisper-large-v3-turbo
--llm-client groq or openai (default: groq)
--llm-model e.g., llama-3.3-70b-versatile

🤖 LLM Models

  • Groq Whisper: whisper-large, whisper-large-v3-turbo, etc.
  • Google Speech: Model defaults to their API standard
  • LLMs for minutes: llama-3, mixtral, gpt-4, etc. (Groq/OpenAI)

📋 Roadmap

  • Add support for multi-language meetings
  • Speaker diarization support
  • Upload directly to Notion or Google Docs
  • Slack/Discord bots

🧑‍🎓 Author

Deepak Raj 👨‍💻 GitHub • 🌐 LinkedIN


🤝 Contributing

Pull requests are welcome! Found a bug or need a feature? Open an issue or submit a PR.


⚖️ License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

transmeet-0.0.26.tar.gz (17.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

transmeet-0.0.26-py3-none-any.whl (18.2 kB view details)

Uploaded Python 3

File details

Details for the file transmeet-0.0.26.tar.gz.

File metadata

  • Download URL: transmeet-0.0.26.tar.gz
  • Upload date:
  • Size: 17.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for transmeet-0.0.26.tar.gz
Algorithm Hash digest
SHA256 99ba30bcef335b0c69ca7dcf07ad7c4f76ade23aaf6acc3389f1a7c212c620b8
MD5 10c500066158245f6d0d554dc047549b
BLAKE2b-256 1529705ddcbecaf738dc63c6f5da526513781c6ee29e81a88b0b8086225fb6a0

See more details on using hashes here.

File details

Details for the file transmeet-0.0.26-py3-none-any.whl.

File metadata

  • Download URL: transmeet-0.0.26-py3-none-any.whl
  • Upload date:
  • Size: 18.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for transmeet-0.0.26-py3-none-any.whl
Algorithm Hash digest
SHA256 d88ebbbf2db95a6653e779ab6f0594b847a6c9ba36d15b1c8c5885f7aa553bc4
MD5 7c6ce07d6d046f67cb94928df52dce49
BLAKE2b-256 d4025f172a6539ddca1fc2aa72f4af18ed3fbe3fcf02cca80b1ac4dade4a7db1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page