Para Julio de 2023 la Completions API recibió su última actualización y fue marcada como tecnologia legacy
OpenAI API
¿Cómo usar la API de OpenAI en tu producto?
Conociendo la documentación de la API de OpenAI
Chat Completions: modelos de Chat de OpenAI
Parámetros de Chat Completions: temperature, top_p y n
Aplicación de ejemplo utilizando modelos de OpenAI
Buenas prácticas al usar modelos de OpenAI
Modelos de texto disponibles de OpenAI
Quiz: OpenAI API
Fine-tuning de modelos de OpenAI
¿Por qué hacer fine-tuning a modelos de OpenAI?
Modelos disponibles para fine-tuning en OpenAI
Costos de uso de OpenAI: tokenización de texto
Configuración de entorno local de OpenAI con Anaconda
Formato de datos para fine-tuning
Preparar datos para fine-tuning
Fine-tuning de modelo de OpenAI
¿Cómo usar el Playground de OpenAI para probar modelos?
Pruebas al modelo con fine-tuning
Optimizar el modelo: ajuste de parámetros en Playground
Quiz: Fine-tuning de modelos de OpenAI
Integración de modelo a aplicación de chat
¿Cómo crear un chatbot con Telegram?
Procesando la entrada del usuario para el chatbot
Prueba de envío de mensajes del chatbot
Función main() del chatbot
Integración del modelo de OpenAI a Telegram
Manejo de errores y excepciones de la API de OpenAI
Quiz: Integración de modelo a aplicación de chat
Conclusión
Recomendaciones finales y proyectos alternativos con la API de OpenAI
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
En el competitivo mundo de la inteligencia artificial, la comunicación eficiente y efectiva a través de modelos lingüísticos es una herramienta crucial. Con las recientes innovaciones en la tecnología de IA, como GPT 3.5 Turbo y GPT 4, la interacción se ha llevado a un nuevo nivel: el de las chat completions. Vamos a sumergirnos en este fascinante tema para entender mejor cómo potenciar nuestros proyectos con estas herramientas avanzadas.
Las chat completions representan una evolución en el uso de modelos de lenguaje. A diferencia de las completions tradicionales, que se basan en una única entrada (o prompt) y devuelven una salida generativa en función de la misma, las chat completions permiten una interacción más rica y profunda. Esto se debe a que proporcionamos un contexto más detallado y estructurado al modelo, utilizando roles y ejemplos específicos que guían las respuestas del sistema.
Para manejar eficazmente una chat completion, debemos establecer claramente los roles:
Role system
: Este rol se utiliza para establecer el contexto principal del asistente, indicándole, por ejemplo, que se comporte como un experto en deportes o un agente de marketing.
Role user
: Representa al usuario que realiza preguntas o solicita información, interactuando con el asistente configurado bajo el rol de sistema.
Los modelos que actualmente soportan las chat completions son dos poderosos aliados:
GPT 3.5 Turbo: Es la versión optimizada del GPT-3, que ofrece respuestas más rápidas y de alta calidad.
GPT 4: La evolución más reciente, que promete ser aún más avanzada en términos de capacidad de entendimiento y generación de lenguaje.
Los parámetros en chat completions son fundamentales para obtener respuestas precisas y acordes al contexto deseado. Entre ellos destacan:
La elección del modelo: Seleccionar entre GPT 3.5 Turbo o GPT 4 según las necesidades del proyecto.
La temperatura: Ajustar este parámetro para controlar el grado de libertad del modelo en sus respuestas, buscando un equilibrio entre creatividad y precisión.
El manejo de tokens: El control de la longitud y el costo de las respuestas, vital para una gestión eficiente y efectiva del modelo.
Con el manejo adecuado de estos parámetros, el modelo puede proporcionar respuestas contextualizadas y detalladas, enriqueciendo la interacción hasta niveles que se asemejan al entendimiento humano.
Explorando las capacidades de las chat completions, nos encontramos con un abanico de aplicaciones:
Creación de emails: Podemos generar correos electrónicos basados en ciertos criterios o estilos.
Programación: Asistir en la estructuración de código, ofreciendo ejemplos o corrigiendo errores.
Desarrollo de agentes conversacionales: Implementar asistentes virtuales especializados en áreas como el soporte al cliente o la educación.
Entender las diferencias entre estas dos herramientas es crucial:
Entrada de datos: Mientras que con completions tradicionales se maneja un único prompt, las chat completions permiten múltiples turnos con ejemplos detallados y roles definidos.
Salida generada: La interactividad es mayor en chat completions, proporcionando respuestas generadas a través de un diálogo continuado, en vez de una única respuesta directa.
Casos de uso: Las chat completions se prestan idealmente para diálogos de múltiples turnos, mientras que las completions resultan más apropiadas para consultas directas y puntuales.
Modelos compatibles: Las chat completions se limitan al uso de GPT 3.5 Turbo y GPT 4, ofreciendo opciones más sofisticadas y enfocadas que los modelos disponibles para completions tradicionales.
La revolución que han traído las chat completions al mundo de la inteligencia artificial es palpable y su aplicabilidad infinita. Si te aventuras en la emocionante tarea de construir tu propio asistente, no olvides la importancia de familiarizarte con la documentación y experimentar con los distintos parámetros, permitiéndote así descubrir el verdadero potencial de estos avanzados modelos lingüísticos. Continúa aprendiendo y experimentando, y prepárate para el siguiente nivel con Fine Tuning en modelos de OpenAI. ¡El viaje apenas comienza!
Aportes 23
Preguntas 3
Para Julio de 2023 la Completions API recibió su última actualización y fue marcada como tecnologia legacy
Todos los Parametros para chat completions: Click aqui
.
Una comparación de la calidad, los costos y la latencia de los modelos ajustados
https://betterprogramming.pub/openai-api-fine-tuned-models-vs-chat-completion-a-case-study-e3774fadc8c7
Cuando chatGPT dice que no se ha celebrado el mundial, se debe a que la info que tiene el modelo GPT-3.5 es informacion que va hasta el 2021, por eso el da esa respuesta. Esto es un factor muy importante a tomar en cuenta dependiendo de los datos historicos que necesitemos para nuestras API.
ChatCompletion con stream=True
.
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "You are an assistant"},
{"role": "user", "content": "What is AI?"},
{"role": "assistant", "content": "AI is Artificial Intelligence"},
{"role": "user", "content": "What are LLM models?"}
],
max_tokens=300,
temperature=0,
n=1,
stream=True,
)
for chunk in response:
if chunk.choices[0].delta.get("content"):
print(chunk.choices[0].delta.content, end="")
Es sumamente importante validar el if chunk.choices[0].delta.get("content")
porque en algunos casos no devuelve la llave content
dentro del diccionario. Entonces con esto se evita que lance una excepción de tipo KeyError
from openai import AsyncOpenAI
client = AsyncOpenAI(api_key='your-open-ai-key-here')
completion = await client.chat.completions.create(
model = 'gpt-3.5-turbo',
messages = [
{"role": "system", "content" :"Eres un asistente que da información sobre deportes"},
{"role": "user", "content" :"¿Quién ganó el mundial de fútbol?"}]
)
response_content = completion.choices[0].message.content
print(response_content)
ya no se puede acceder al modelo de chatgpt 4
<response = openai.ChatCompletion.create(
model = 'gpt-3.5-turbo',
messages = [
{"role":"system","content":"Eres un otaku que da informacion sobre anime"},
{"role":"user","content":"quien es naruto"},
{"role":"assistant","content":"ser hokage es el maximo rol que puede alacanzar un ninja es aquel que tiene la fuerza para proteger la aldea y la sabiduria para guiarla "},
{"role":"user","content":"quienes han sido los hokages"},
],
temperature = 1
)
print(response['choices'][0]['message']['content'])>
A lo largo de la historia del manga y anime de Naruto, ha habido varios Hokages. Aquí tienes la lista de los Hokages hasta la fecha:
Estos son los principales Hokages que han aparecido en Naruto.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?