Tradução e NLP
Processamento de linguagem natural com ChatGPT
10-15 min
Tradução e NLP com ChatGPT
Introdução
A API do ChatGPT oferece recursos avançados para tradução e processamento de linguagem natural (NLP). Neste tutorial, vamos explorar como usar essas funcionalidades para criar aplicações de tradução e análise de texto.
Funcionalidades principais
Tradução
- Tradução entre idiomas
- Tradução contextual
- Tradução de documentos
Processamento de linguagem natural
- Análise de sentimento
- Extração de entidades
- Classificação de texto
- Resumo de texto
Implementação
1. Serviço de tradução
import openai
from typing import List, Dict, Optional
class TranslationService:
def __init__(self, api_key: str):
openai.api_key = api_key
def translate_text(
self,
text: str,
target_language: str,
source_language: Optional[str] = None,
context: Optional[str] = None
) -> str:
"""
Traduz um texto para o idioma de destino
"""
prompt = f"""
Traduisez le texte suivant en {target_language}
{f' depuis {source_language}' if source_language else ''}
{f'Contexte: {context}' if context else ''}
Texte à traduire:
{text}
Instructions:
1. Conservez le style et le ton du texte original
2. Adaptez les expressions idiomatiques
3. Respectez la ponctuation et la mise en forme
"""
try:
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "Vous êtes un expert en traduction."},
{"role": "user", "content": prompt}
],
temperature=0.3
)
return response.choices[0].message.content
except Exception as e:
print(f"Erreur lors de la traduction: {str(e)}")
return None
def translate_batch(
self,
texts: List[str],
target_language: str,
source_language: Optional[str] = None
) -> List[Dict[str, str]]:
"""
Traduz um lote de textos
"""
results = []
for text in texts:
translation = self.translate_text(text, target_language, source_language)
results.append({
'original': text,
'translated': translation
})
return results
Comentários
Os comentários são alimentados pelo GitHub Discussions
Conecte-se com o GitHub para participar da discussão