Skip to main content

No project description provided

Project description

SUBT-AI-TLES

A simple wrapper around LLMs that provides language translation interface for subtitles (.srt).

Predefined implementations

So far OpenAI API is the only supported/pre-implemented 'backend'

Setup required environment variables and then simply import and invoke the function.

import asyncio
from subtaitles import translate_srt_file, Engine, Lang

# use predefined translators from the Engine enum
asyncio.run(
    translate_srt_file(
        path="/tmp/subtitles.en.srt",
        new_path="/tmp/subtitles.de.srt",
        translator=Engine.OPEN_AI,
        source=Lang.EN,
        target=Lang.DE
    )
)
# behavior and configuration is controlled via environment variables
# all the used variables are defined int the environment module
from subtaitles import env

Custom implementations

An arbitrary class that implements the TranslateProtocol can be passed to both the translate_srt_file() and translate_srt()

import asyncio
from subtaitles import Lang, translate_srt_file

class MyCustomTranslator:
     async def translate(
        self, text: list[str], language_from: Lang, language_to: Lang,
    ) -> list[str]:
        # <implement whatever floats your boat>
        ...

asyncio.run(
    translate_srt_file(
        path="/tmp/subtitles.en.srt",
        new_path="/tmp/subtitles.de.srt",
        translator=MyCustomTranslator(),
        source=Lang.EN,
        target=Lang.DE
    )
)

CLI

translate_srt_file is exposed as a utility command for command line usage:

translate_subtitles --help
translate_subtitles --engine openai /tmp/subtitles.en.srt /tmp/subtitles.de.srt en de

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

subt_ai_tles-0.0.3.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

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

subt_ai_tles-0.0.3-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file subt_ai_tles-0.0.3.tar.gz.

File metadata

  • Download URL: subt_ai_tles-0.0.3.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.11

File hashes

Hashes for subt_ai_tles-0.0.3.tar.gz
Algorithm Hash digest
SHA256 02e427e1bebf11235fbd5fc6e3696d9d280ccb0d63baac7d7f25f5c8da41523d
MD5 a5ce6346d3fe5eacc56c33efcac6cba5
BLAKE2b-256 ab7730de84c4f878a0525bdeafaae08151674975afc4ecd1a1edf07d937ad0c9

See more details on using hashes here.

File details

Details for the file subt_ai_tles-0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for subt_ai_tles-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 7c7dd81c8d8278a1e551261c4938a1f90d3787eba3f4467c499c2b4376e2fa2c
MD5 55f55a8d9c4fad1724e1046f7bce3ea6
BLAKE2b-256 eb910aa953ff1e0aa5d8da65e5ebf067c22af5f90d9a1820024f779eda50c7c8

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