Skip to main content

Call analytics pipeline for speech-to-text, summarization, and insights extraction

Project description

Parlona

Call analytics pipeline for speech-to-text, summarization, and insights extraction.

Installation

pip install parlona

Set your LLM API key (for OpenAI):

export OPENAI_API_KEY="your-api-key"

Quick Start

import parlona

# Process an audio file
result = parlona.process("call.wav")

# Access results
print(result.transcript)
print(result.summary)
print(result.headline)
print(f"Sentiment: {result.sentiment.label} ({result.sentiment.score})")
print(f"Entities: {result.entities}")

Features

  • Speech-to-Text: Powered by faster-whisper with stereo channel diarization
  • Call Summarization: LLM-powered summaries via OpenAI, Groq, vLLM, or Ollama
  • Sentiment Analysis: Automatic sentiment detection and scoring
  • Entity Extraction: Named entity recognition with speaker attribution
  • Multi-language Support: Automatic language detection

Advanced Usage

from parlona import CallProcessor, STTConfig, LLMConfig

# Custom configuration
stt_config = STTConfig(
    model_name="Systran/faster-whisper-medium",
    device="cuda",
    diarization_mode="stereo_channels",
    speaker_mapping={0: "agent", 1: "customer"}
)

llm_config = LLMConfig(
    backend="openai",
    api_key="your-api-key",
    model="gpt-4o-mini"
)

# Create processor and process
processor = CallProcessor(stt_config=stt_config, llm_config=llm_config)
result = processor.process("call.wav")

Modular Usage

Use STT and LLM components separately:

from parlona.stt import STTEngine, STTConfig
from parlona.llm import LLMClient, LLMConfig

# STT only
stt_engine = STTEngine(STTConfig())
transcription = stt_engine.transcribe("audio.wav")

# LLM only
llm_client = LLMClient(LLMConfig(backend="openai"))
summary, headline, lang, sentiment, entities, score = \
    llm_client.summarize_with_headline(transcript)

Requirements

  • Python 3.9+
  • OpenAI API key (or other LLM backend)

License

Apache-2.0

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

parlona-1.0.0.tar.gz (21.5 kB view details)

Uploaded Source

Built Distribution

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

parlona-1.0.0-py3-none-any.whl (23.1 kB view details)

Uploaded Python 3

File details

Details for the file parlona-1.0.0.tar.gz.

File metadata

  • Download URL: parlona-1.0.0.tar.gz
  • Upload date:
  • Size: 21.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.21

File hashes

Hashes for parlona-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d6c2198f1f1a50b14325b77cc654b7f51d8bfa9a4bd90eddba205320ff975557
MD5 a55db6418b250f73edbf2cf38aec2d1c
BLAKE2b-256 ad7ccf8c8f777ef3768def92c374f111a7c33d357d883addf87fc4891689d4ba

See more details on using hashes here.

File details

Details for the file parlona-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: parlona-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 23.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.21

File hashes

Hashes for parlona-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1c1ca6154b409b755dd23103acd0c6acc7e69ff24ad370ff754a0ae00040e514
MD5 32d83cc7826dffac068336cb8ab75fd9
BLAKE2b-256 feeb4fedbdbb962b5a0f51a93435800513cc372b01b2754a8e621c77c438340e

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