Geração de conteúdo com LLMs

Geração de conteúdo com LLMs

Introdução

Os modelos de linguagem podem ser usados para gerar diferentes tipos de conteúdo de forma automatizada e criativa. Este tutorial explora as diferentes maneiras de usar LLMs na criação de conteúdo.

Tipos de conteúdo que podem ser gerados

1. Conteúdo de marketing

2. Conteúdo técnico

3. Conteúdo criativo

Implementação

1. Gerador de conteúdo básico

from openai import OpenAI
import json

class ContentGenerator:
    def __init__(self, api_key):
        self.client = OpenAI(api_key=api_key)
    
    def generate_content(self, content_type, parameters):
        prompt = self._create_prompt(content_type, parameters)
        
        response = self.client.chat.completions.create(
            model="gpt-3.5-turbo",
            messages=[
                {"role": "system", "content": "Tu es un expert en création de contenu."},
                {"role": "user", "content": prompt}
            ],
            temperature=0.7
        )
        
        return response.choices[0].message.content
    
    def _create_prompt(self, content_type, parameters):
        prompts = {
            "blog_post": """
                Crée un article de blog sur le sujet suivant :
                Sujet : {topic}
                Ton : {tone}
                Longueur : {length} mots
                Public cible : {target_audience}
                
                Structure :
                1. Introduction accrocheuse
                2. Points principaux
                3. Exemples et illustrations
                4. Conclusion
                """,
            
            "social_media": """
                Crée un post pour {platform} sur le sujet suivant :
                Sujet : {topic}
                Ton : {tone}
                Hashtags : {hashtags}
                Longueur maximale : {max_length} caractères
                """,
            
            "product_description": """
                Crée une description de produit pour :
                Produit : {product_name}
                Caractéristiques : {features}
                Public cible : {target_audience}
                Ton : {tone}
                
                Inclus :
                1. Titre accrocheur
                2. Description principale
                3. Points clés
                4. Call-to-action
                """
        }
        
        return prompts[content_type].format(**parameters)