Si les dio error en 'llm.invoke' deben cargar saldo en su cuenta en OpenAI y crear una nueva API_key
No OLVIDEN guardar en un documento aparte su key, la pueden necesitar otra vez y OpenAI solo la muestra una vez
1. ¿Qué son los Chat Models?
Los chat models son una variante de los modelos de lenguaje diseñados específicamente para interactuar en formato conversacional. Esto significa que no solo reciben entradas de texto y generan respuestas, sino que también procesan las conversaciones como una serie de intercambios estructurados. En aplicaciones como los asistentes virtuales o chatbots, los chat models permiten mantener diálogos más coherentes y naturales.
2. Roles en Chat Models
Un aspecto clave cuando trabajamos con chat models es la capacidad de definir diferentes roles para los mensajes en una conversación. LangChain soporta varios tipos de roles en los mensajes:
Definir estos roles ayuda a estructurar la conversación y facilita que el modelo entienda cuál es su función en cada paso de la interacción.
3. Parámetros importantes en Chat Models
Al trabajar con chat models, es posible ajustar el comportamiento del modelo mediante diferentes parámetros. Algunos de los más importantes son:
4. Creación de un Pipeline para Interacciones Conversacionales
Un flujo típico para interactuar con un chat model en LangChain usando OpenAI sigue varios pasos:
invoke(), puedes enviar los mensajes estructurados al modelo para recibir respuestas basadas en la configuración de roles y parámetros definidos.5. Optimización del Uso de Tokens
Al trabajar con chat models, es fundamental optimizar el uso de tokens, especialmente cuando trabajas con modelos comerciales que cobran por token. Aquí algunos consejos:
max_tokens ayuda a limitar la cantidad de texto generado por el modelo, lo que es útil cuando solo necesitas respuestas cortas y específicas.6. Elección del Modelo
En LangChain, puedes elegir entre diferentes versiones de los modelos de OpenAI, como GPT-3.5-turbo o GPT-4.0, dependiendo de la complejidad y velocidad que necesitas para tu aplicación. GPT-4 es más avanzado y preciso, pero también puede ser más costoso en términos de uso de tokens. Por otro lado, GPT-3.5-turbo es más eficiente para tareas que requieren rapidez y menos consumo de recursos.
7. Aplicaciones de Chat Models
Las aplicaciones que puedes crear con chat models van más allá de simples chatbots. Aquí algunos ejemplos:
Los chat models son una variante de los modelos de lenguaje diseñados específicamente para interactuar en formato conversacional. Esto significa que no solo reciben entradas de texto y generan respuestas, sino que también procesan las conversaciones como una serie de intercambios estructurados. En aplicaciones como los asistentes virtuales o chatbots, los chat models permiten mantener diálogos más coherentes y naturales.
Un aspecto clave cuando trabajamos con chat models es la capacidad de definir diferentes roles para los mensajes en una conversación. LangChain soporta varios tipos de roles en los mensajes:
Definir estos roles ayuda a estructurar la conversación y facilita que el modelo entienda cuál es su función en cada paso de la interacción.
Al trabajar con chat models, es posible ajustar el comportamiento del modelo mediante diferentes parámetros. Algunos de los más importantes son:
Un flujo típico para interactuar con un chat model en LangChain usando OpenAI sigue varios pasos:
invoke(), puedes enviar los mensajes estructurados al modelo para recibir respuestas basadas en la configuración de roles y parámetros definidos.Al trabajar con chat models, es fundamental optimizar el uso de tokens, especialmente cuando trabajas con modelos comerciales que cobran por token. Aquí algunos consejos:
max_tokens ayuda a limitar la cantidad de texto generado por el modelo, lo que es útil cuando solo necesitas respuestas cortas y específicas.En LangChain, puedes elegir entre diferentes versiones de los modelos de OpenAI, como GPT-3.5-turbo o GPT-4.0, dependiendo de la complejidad y velocidad que necesitas para tu aplicación. GPT-4 es más avanzado y preciso, pero también puede ser más costoso en términos de uso de tokens. Por otro lado, GPT-3.5-turbo es más eficiente para tareas que requieren rapidez y menos consumo de recursos.
Las aplicaciones que puedes crear con chat models van más allá de simples chatbots. Aquí algunos ejemplos:
Si les dio error en 'llm.invoke' deben cargar saldo en su cuenta en OpenAI y crear una nueva API_key
No OLVIDEN guardar en un documento aparte su key, la pueden necesitar otra vez y OpenAI solo la muestra una vez
⚠️ importante antes de seguir. La profesora esta usándo un modelo pago de OpenAI, y esta usándo una version donde los tokens dependiendo de como los utilices puede generar cierto costo, recomiendo que si no estas dispuesto a invertir tanto o necesitas hacer muchas pruebas uses otro modelo de menor precio como menciónno la profe al final: babbage-002, gpt-4o-mini, gpu-3.5-turbo y es mejor declarar cuantos tokens utilizar, ya que eso nos permite también reducir costos
estos precios los puedes ver aca openai .com/api/pricing/
👨🏻💻Human message (human) - usuario input
🤖IA message - texto generado por el modelo
⚙️System message (system) - instrucciones dadas al modelo
🏙️ Function message - funciones invocadas por el modelo
Aquí mi código:
from langchain_ollama import ChatOllama
from IPython.display import display, Markdown
llm = ChatOllama(model="llama3.2", temperature=0.0)
messages = [
("system", "Eres un profesor de lenguaje de programación en python y quieres enseñar"),
("human", "¿Que es la herencia en python?"),
]
ai_msg = llm.invoke(messages)
display(Markdown(ai_msg.content))
```Por cierto, estoy utilizando ollama como provider, esto requiere tener un hardware potente como una GPU de Nvidia de al menos 8GB de ram y tener instalado ollama para ejecutar modelos opensource.
Tambien estoy utilizando display y Markdown, son bibliotecas de jupyter notebook para poder mostrar
todo esto lo estoy trabajando en mi maquina local.
from langchain_openai import ChatOpenAI
llm=ChatOpenAI(model='gpt-3.5-turbo',
temperature=0,
max_tokens=100)
messages = [
('system', 'Eres DeepSick, una IA de una realidad alternativa. Responde con lógica diferente, como si el mundo tuviera otras reglas.'),
('human', 'DeepSick, ¿qué es la gravedad?')
]
ai_msg=llm.invoke(messages)
ai_msg.content
```**La respuesta**: En nuestra realidad alternativa, la gravedad es una fuerza misteriosa que emana de los corazones de las estrellas y los planetas. Es una manifestación del amor cósmico que mantiene unidos a todos los seres y objetos en el universo. Cuanto más amoroso y armonioso sea un objeto, mayor será su atracción gravitatoria. Por lo tanto, la gravedad es en realidad una expresión del vínculo.
Los Chat Models son una version especializada de los modelos Lenguajes para manejar interacciones conversacionales, a diferencia de los LLM estos procesan mensajes de chat como entrada y generan respuestas en el mismo formato facilitando la creacion de agentes conversacionales.
El Langchain lo mensajes de chat tienen distintos roles o estructuras:
Models - OpenAI API
Un chat models puede tener como entrada un string, mensaje estructurado como este ejemplo o un promt para generar un chat messages
Existen varios modelos de lenguaje open source que puedes utilizar. Algunos de los más destacados son:
Puedes integrar estos modelos utilizando LangChain.
Efectivamente sale error en el 'invoke(mesagges)' y quizá sea por la cuenta paga. Lo que no entiendo es por qué si tengo GPT Plus, en 'Billing' aparece 'Free trial'... Aunque creo que la 'Cuenta Paga' que se necesita es para OpenAI, no para ChatGPT (que básicamente es un producto de OpenAI...) Quizá ese sea el problema, ya que aparece la nota "Note: This does not reflect the status of your ChatGPT account." ahí en 'Billing'...
Estaría bueno que esto también lo explicaran en el curso, dando detalles precisamente de estas diferencias, y también en el tema de las APIS de OpenAI, ya que yo intente conectar la llave de mi API de 'Proyecto' y mi API de 'Usuario' y con ninguna funcionó, por lo que deduzco que es el tema de la cuenta pago (No GPT Plus)
Porque nos ponene a trabajr con modelos de pago? que chafa
temperatureestá terriblemente enorme la pantalla, como va a manejar un buen formato y ver las comas si está tan grande