lectorai
SDK Oficial de Python
Integra LectorAI en tus aplicaciones Python para automatizar la traducción de libros.
Instalación
#pip
pip install lectorai#poetry
poetry add lectoraiInicio Rápido
Traduce un libro en menos de 10 líneas de código
from lectorai import LectorAI
# Inicializar cliente
client = LectorAI(api_key='lector_xxx')
# 1. Subir libro
book = client.books.upload('libro.epub', title='Mi Libro')
# 2. Iniciar traducción
client.translate.start(
book.id,
source_language='en',
target_language='es',
model='gpt-4o-mini'
)
# 3. Esperar completado con progreso
def on_progress(book):
print(f"Progreso: {book.progress}%")
result = client.books.wait_for_completion(book.id, on_progress=on_progress)
# 4. Descargar EPUB traducido
client.download.epub(book.id, 'traducido.epub')Características
Type Hints Completos
SDK 100% tipado con Pydantic para autocompletado y validación en tu IDE.
Context Manager
Usa with para manejo automático de recursos.
Callbacks de Progreso
Recibe actualizaciones en tiempo real durante la traducción.
Excepciones Específicas
Manejo de errores granular con excepciones para cada tipo de error.
Referencia de API
client.books
.list(status, limit, offset)- Listar libros.get(book_id)- Obtener un libro.upload(file, title, author)- Subir libro.delete(book_id)- Eliminar libro.get_chapters(book_id)- Obtener capítulos.wait_for_completion(book_id, timeout, on_progress)- Esperar traducción
client.translate
.start(book_id, source_language, target_language, model)- Iniciar.pause(book_id)- Pausar traducción.resume(book_id)- Reanudar traducción.cancel(book_id)- Cancelar traducción.get_status(book_id)- Estado detallado
client.download
.epub(book_id, output_path)- Descargar EPUB.pdf(book_id, output_path)- Descargar PDF.original(book_id, output_path)- Archivo original.get_epub_bytes(book_id)- EPUB como bytes.get_pdf_bytes(book_id)- PDF como bytes
client.usage
.get()- Obtener uso actual.get_limits()- Obtener límites
client.health
.check()- Estado de salud completo.ping()- Verificar conexión
Manejo de Errores
from lectorai import (
LectorAI,
LectorAIError,
AuthenticationError,
NotFoundError,
RateLimitError,
)
try:
book = client.books.get('invalid_id')
except NotFoundError:
print("Libro no encontrado")
except AuthenticationError:
print("API key inválida")
except RateLimitError:
print("Límite de requests excedido")
except LectorAIError as e:
print(f"Error: {e.message} (código: {e.status_code})")Modelos Disponibles
| Modelo | ID | Descripción |
|---|---|---|
| GPT-4o | gpt-4o | Máxima calidad |
| GPT-4o Mini | gpt-4o-mini | Rápido y económico |
| Claude Sonnet | claude-sonnet | Balance calidad/velocidad |
| Claude Haiku | claude-haiku | El más rápido |
Requisitos
- Python3.8+
- httpx>= 0.24.0
- pydantic>= 2.0.0
Obtén tu API Key
Crea una API key en configuración para empezar a usar el SDK