Generación de contenido con LLM

Generación de contenido con LLM

Introducción

Los modelos de lenguaje pueden utilizarse para generar distintos tipos de contenido de forma automatizada y creativa. Este tutorial explora las diferentes formas de usar los LLM para la creación de contenido.

Tipos de contenido que se pueden generar

1. Contenido de marketing

2. Contenido técnico

3. Contenido creativo

Implementación

1. Generador de contenido 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)