Hoy, nos complace anunciar el modelo de lenguaje grande (LLM) Mixtral-8x22B, desarrollado por ai/” target=”_blank” rel=”noopener”>Mistral ai, está disponible para que los clientes a través de amazon SageMaker JumpStart lo implementen con un solo clic para ejecutar inferencia. Puede probar este modelo con SageMaker JumpStart, un centro de aprendizaje automático (ML) que brinda acceso a algoritmos y modelos para que pueda comenzar rápidamente con ML. En esta publicación, explicamos cómo descubrir e implementar el modelo Mixtral-8x22B.
¿Qué es Mixtral 8x22B?
Mixtral 8x22B es el último modelo de pesas abiertas de Mistral ai y ai/news/mixtral-8x22b/” target=”_blank” rel=”noopener”>establece un nuevo estándar de rendimiento y eficiencia de los modelos de cimentación disponibles, según lo medido por Mistral ai en los puntos de referencia estándar de la industria. Es un modelo escaso de Mezcla de Expertos (SMoE) que utiliza sólo 39 mil millones de parámetros activos de 141 mil millones, lo que ofrece rentabilidad para su tamaño. Continuando con la creencia de Mistral ai en el poder de los modelos disponibles públicamente y su amplia distribución para promover la innovación y la colaboración, Mixtral 8x22B se lanza bajo Apache 2.0, lo que hace que el modelo esté disponible para exploración, prueba e implementación. Mixtral 8x22B es una opción atractiva para los clientes que seleccionan entre modelos disponibles públicamente y priorizan la calidad, y para aquellos que desean una mayor calidad en modelos de tamaño mediano, como Mixtral 8x7B y GPT 3.5 Turbo, manteniendo al mismo tiempo un alto rendimiento.
Mixtral 8x22B proporciona los siguientes puntos fuertes:
- Capacidades nativas multilingües en inglés, francés, italiano, alemán y español.
- Fuertes capacidades matemáticas y de codificación.
- Capaz de realizar llamadas a funciones que permiten el desarrollo de aplicaciones y la modernización de la pila tecnológica a escala.
- Ventana contextual de 64.000 tokens que permite recuperar información precisa de documentos grandes
Acerca de Mistral ai
Mistral ai es una empresa con sede en París fundada por investigadores experimentados de Meta y Google DeepMind. Durante su tiempo en DeepMind, Arthur Mensch (CEO de Mistral) fue un colaborador principal en proyectos clave de LLM como Flamingo y Chinchilla, mientras que Guillaume Lample (Científico jefe de Mistral) y Timothée Lacroix (CTO de Mistral) lideraron el desarrollo de LLaMa LLM durante su tiempo. en Meta. El trío forma parte de una nueva generación de fundadores que combinan una profunda experiencia técnica y operativa trabajando en tecnología de aprendizaje automático de última generación en los laboratorios de investigación más grandes. Mistral ai ha defendido modelos básicos pequeños con rendimiento superior y compromiso con el desarrollo de modelos. Continúan ampliando la frontera de la inteligencia artificial (IA) y haciéndola accesible para todos con modelos que ofrecen una rentabilidad inigualable para sus respectivos tamaños, ofreciendo una atractiva relación rendimiento-coste. Mixtral 8x22B es una continuación natural de la familia de modelos disponibles públicamente de Mistral ai que incluye Mistral 7B y Mixtral 8x7B, también disponibles en SageMaker JumpStart. Más recientemente, Mistral lanzó modelos comerciales de nivel empresarial, y Mistral Large ofrece un rendimiento de primer nivel y supera a otros modelos populares con dominio nativo en varios idiomas.
¿Qué es SageMaker JumpStart?
Con SageMaker JumpStart, los profesionales del aprendizaje automático pueden elegir entre una lista cada vez mayor de modelos básicos de mejor rendimiento. Los profesionales del aprendizaje automático pueden implementar modelos básicos en instancias dedicadas de amazon SageMaker dentro de un entorno aislado de red y personalizar modelos utilizando SageMaker para el entrenamiento y la implementación de modelos. Ahora puede descubrir e implementar Mixtral-8x22B con unos pocos clics en amazon SageMaker Studio o mediante programación a través del SDK de SageMaker Python, lo que le permite derivar el rendimiento del modelo y controles MLOps con funciones de SageMaker como amazon SageMaker Pipelines, amazon SageMaker Debugger o registros de contenedores. . El modelo se implementa en un entorno seguro de AWS y bajo los controles de su VPC, lo que proporciona cifrado de datos en reposo y en tránsito.
SageMaker también se adhiere a marcos de seguridad estándar como ISO27001 y SOC1/2/3, además de cumplir con varios requisitos reglamentarios. Se admiten marcos de cumplimiento como el Reglamento General de Protección de Datos (GDPR) y la Ley de Privacidad del Consumidor de California (CCPA), la Ley de Responsabilidad y Portabilidad del Seguro Médico (HIPAA) y el Estándar de Seguridad de Datos de la Industria de Tarjetas de Pago (PCI DSS) para garantizar el manejo, almacenamiento y y el proceso cumplen estrictos estándares de seguridad.
La disponibilidad de SageMaker JumpStart depende del modelo; Mixtral-8x22B v0.1 actualmente es compatible con las regiones de AWS Este de EE. UU. (Norte de Virginia) y Oeste de EE. UU. (Oregón).
Descubre modelos
Puede acceder a los modelos básicos de Mixtral-8x22B a través de SageMaker JumpStart en la interfaz de usuario de SageMaker Studio y el SDK de SageMaker Python. En esta sección, repasamos cómo descubrir los modelos en SageMaker Studio.
SageMaker Studio es un entorno de desarrollo integrado (IDE) que proporciona una única interfaz visual basada en web donde puede acceder a herramientas diseñadas específicamente para realizar todos los pasos de desarrollo de ML, desde la preparación de datos hasta la creación, el entrenamiento y la implementación de sus modelos de ML. Para obtener más detalles sobre cómo comenzar y configurar SageMaker Studio, consulte amazon SageMaker Studio.
En SageMaker Studio, puede acceder a SageMaker JumpStart eligiendo Buen inicio en el panel de navegación.
Desde la página de inicio de SageMaker JumpStart, puede buscar “Mixtral” en el cuadro de búsqueda. Verá resultados de búsqueda que muestran Mixtral 8x22B Instruct, varios modelos Mixtral 8x7B y modelos Dolphin 2.5 y 2.7.
Puede elegir la tarjeta de modelo para ver detalles sobre el modelo, como la licencia, los datos utilizados para entrenar y cómo utilizarlo. También encontrarás el Desplegar que puede utilizar para implementar el modelo y crear un punto final.
SageMaker tiene habilitado el registro, el monitoreo y la auditoría sin problemas para los modelos implementados con integraciones nativas con servicios como AWS CloudTrail para el registro y el monitoreo para proporcionar información sobre las llamadas API y amazon CloudWatch para recopilar métricas, registros y datos de eventos para proporcionar información sobre el recurso del modelo. utilización.
Implementar un modelo
La implementación comienza cuando usted elija Desplegar. Una vez finalizada la implementación, se crea un punto final. Puede probar el punto final pasando una carga útil de solicitud de inferencia de muestra o seleccionando su opción de prueba mediante el SDK. Cuando seleccione la opción para usar el SDK, verá un código de ejemplo que puede usar en su editor de cuaderno preferido en SageMaker Studio. Esto requerirá un rol y una política de AWS Identity and Access Management (IAM) adjuntos para restringir el acceso al modelo. Además, si elige implementar el punto final del modelo dentro de SageMaker Studio, se le pedirá que elija un tipo de instancia, un recuento de instancias inicial y un recuento máximo de instancias. Los tipos de instancia ml.p4d.24xlarge y ml.p4de.24xlarge son los únicos tipos de instancia admitidos actualmente para Mixtral 8x22B Instruct v0.1.
Para implementar usando el SDK, comenzamos seleccionando el modelo Mixtral-8x22b, especificado por el model_id
con valor huggingface-llm-mistralai-mixtral-8x22B-instruct-v0-1
. Puede implementar cualquiera de los modelos seleccionados en SageMaker con el siguiente código. De manera similar, puede implementar la instrucción Mixtral-8x22B utilizando su propio ID de modelo.
from sagemaker.jumpstart.model import JumpStartModel model = JumpStartModel(model_id=""huggingface-llm-mistralai-mixtral-8x22B-instruct-v0-1") predictor = model.deploy()
Esto implementa el modelo en SageMaker con configuraciones predeterminadas, incluido el tipo de instancia predeterminado y las configuraciones de VPC predeterminadas. Puede cambiar estas configuraciones especificando valores no predeterminados en JumpStartModelo.
Una vez implementado, puede ejecutar inferencia contra el punto final implementado a través del predictor de SageMaker:
payload = {"inputs": "Hello!"}
predictor.predict(payload)
Indicaciones de ejemplo
Puede interactuar con un modelo Mixtral-8x22B como cualquier modelo de generación de texto estándar, donde el modelo procesa una secuencia de entrada y genera las siguientes palabras predichas en la secuencia. En esta sección, proporcionamos indicaciones de ejemplo.
Instrucción Mixtral-8x22b
La versión adaptada a las instrucciones de Mixtral-8x22B acepta instrucciones formateadas en las que los roles de conversación deben comenzar con un mensaje del usuario y alternar entre instrucciones del usuario y asistente (respuesta modelo). El formato de instrucción debe respetarse estrictamente; de lo contrario, el modelo generará resultados subóptimos. La plantilla utilizada para crear un mensaje para el modelo Instruct se define de la siguiente manera:
(INST) Instruction (/INST) Model answer (INST) Follow-up instruction (/INST))
y
are special tokens for beginning of string (BOS) and end of string (EOS), whereas (INST)
y (/INST)
son cadenas regulares.
El siguiente código muestra cómo puede formatear el mensaje en formato de instrucción:
from typing import Dict, List
def format_instructions(instructions: List(Dict(str, str))) -> List(str):
"""Format instructions where conversation roles must alternate user/assistant/user/assistant/..."""
prompt: List(str) = ()
for user, answer in zip(instructions(::2), instructions(1::2)):
prompt.extend(("", "(INST) ", (user("content")).strip(), " (/INST) ", (answer("content")).strip(), ""))
prompt.extend(("", "(INST) ", (instructions(-1)("content")).strip(), " (/INST) ",""))
return "".join(prompt)
def print_instructions(prompt: str, response: str) -> None:
bold, unbold = '\033(1m', '\033(0m'
print(f"{bold}> Input{unbold}\n{prompt}\n\n{bold}> Output{unbold}\n{response(0)('generated_text')}\n")
Mensaje de resumen
Puede utilizar el siguiente código para obtener una respuesta para un resumen:
instructions = ({"role": "user", "content": """Summarize the following information. Format your response in short paragraph.
Article:
Contextual compression - To address the issue of context overflow discussed earlier, you can use contextual compression to compress and filter the retrieved documents in alignment with the query’s context, so only pertinent information is kept and processed. This is achieved through a combination of a base retriever for initial document fetching and a document compressor for refining these documents by paring down their content or excluding them entirely based on relevance, as illustrated in the following diagram. This streamlined approach, facilitated by the contextual compression retriever, greatly enhances RAG application efficiency by providing a method to extract and utilize only what’s essential from a mass of information. It tackles the issue of information overload and irrelevant data processing head-on, leading to improved response quality, more cost-effective LLM operations, and a smoother overall retrieval process. Essentially, it’s a filter that tailors the information to the query at hand, making it a much-needed tool for developers aiming to optimize their RAG applications for better performance and user satisfaction.
"""})
prompt = format_instructions(instructions)
payload = {
"inputs": prompt,
"parameters": {"max_new_tokens": 1500}
}
response=predictor.predict(payload)
print_instructions(prompt, response)
El siguiente es un ejemplo del resultado esperado:
> > Input
(INST) Summarize the following information. Format your response in short paragraph.
Article:
Contextual compression - To address the issue of context overflow discussed earlier, you can use contextual compression to compress and filter the retrieved documents in alignment with the query’s context, so only pertinent information is kept and processed. This is achieved through a combination of a base retriever for initial document fetching and a document compressor for refining these documents by paring down their content or excluding them entirely based on relevance, as illustrated in the following diagram. This streamlined approach, facilitated by the contextual compression retriever, greatly enhances RAG application efficiency by providing a method to extract and utilize only what’s essential from a mass of information. It tackles the issue of information overload and irrelevant data processing head-on, leading to improved response quality, more cost-effective LLM operations, and a smoother overall retrieval process. Essentially, it’s a filter that tailors the information to the query at hand, making it a much-needed tool for developers aiming to optimize their RAG applications for better performance and user satisfaction. (/INST)
> Output
(INST) Summarize the following information. Format your response in short paragraph.
Article:
Contextual compression - To address the issue of context overflow discussed earlier, you can use contextual compression to compress and filter the retrieved documents in alignment with the query’s context, so only pertinent information is kept and processed. This is achieved through a combination of a base retriever for initial document fetching and a document compressor for refining these documents by paring down their content or excluding them entirely based on relevance, as illustrated in the following diagram. This streamlined approach, facilitated by the contextual compression retriever, greatly enhances RAG application efficiency by providing a method to extract and utilize only what’s essential from a mass of information. It tackles the issue of information overload and irrelevant data processing head-on, leading to improved response quality, more cost-effective LLM operations, and a smoother overall retrieval process. Essentially, it’s a filter that tailors the information to the query at hand, making it a much-needed tool for developers aiming to optimize their RAG applications for better performance and user satisfaction. (/INST) Contextual compression is a technique used to manage the issue of context overflow in information retrieval. This method involves compressing and filtering the retrieved documents to align with the query's context, ensuring that only relevant information is processed. This is achieved through a two-step process: a base retriever fetches the initial set of documents, and a document compressor refines these documents by either reducing their content or excluding them entirely based on relevance.
The contextual compression retriever significantly improves the efficiency of Retrieval-Augmented Generation (RAG) applications by extracting and utilizing only the essential information from a large pool of data. This approach addresses the problem of information overload and irrelevant data processing, leading to improved response quality, cost-effective operations, and a smoother retrieval process. In essence, contextual compression acts as a filter that tailors the information to the specific query, making it an indispensable tool for developers aiming to optimize their RAG applications for better performance and user satisfaction.
Mensaje de traducción multilingüe
Puede utilizar el siguiente código para obtener una respuesta para una traducción multilingüe:
Prompt
instructions = ({"role": "user", "content": """\
El siguiente es un ejemplo del resultado esperado:
> Input
(INST)
> Output
(INST)
French:
1. Client : "J'ai récemment commandé un casque audio sans fil, mais j'ai reçu un modèle différent. Quelles sont les étapes à suivre pour recevoir le produit correct que j'ai commandé ?"
2. Client : "J'ai acheté un ordinateur portable personnalisable le mois dernier et j'ai opté pour des mises à niveau spécifiques. Cependant, les performances de l'ordinateur portable ne sont pas à la hauteur de mes attentes. Puis-je avoir un technicien qui vérifie cela, ou devrais-je envisager de le retourner ?"
3. Client : "Ma commande pour un sac à main de designer devait inclure un portefeuille assorti dans le cadre d'une offre promotionnelle, mais le portefeuille ne se trouvait pas dans le paquet. Comment puis-je résoudre ce problème ?"
4. Client : "Je vois que les informations de suivi de ma commande de batterie de cuisine en céramique indiquent qu'elle a été livrée, mais je ne l'ai pas reçue. Pourriez-vous m'aider à déterminer où se trouve mon colis ?"
5. Client : "J'essaie d'acheter un miroir antique de votre collection vintage, mais le site continue de me donner une erreur lorsque j'essaie de passer à la caisse. Existe-t-il un autre moyen de finaliser mon achat ?"
German:
1. Kunde: "Ich habe kürzlich ein Set kabelloser Kopfhörer bestellt, aber ich habe ein anderes Modell erhalten. Welche Schritte sollte ich unternehmen, um das richtige Produkt zu erhalten, das ich bestellt habe?"
2. Kunde: "Ich habe letzten Monat einen anpassbaren Laptop gekauft und habe mich für spezifische Upgrades entschieden. Allerdings entspricht die Leistung des Laptops nicht meinen Erwartungen. Kann ich einen Techniker hinzuziehen lassen oder sollte ich eine Rückgabe in Erwägung ziehen?"
3. Kunde: "Meine Bestellung für eine Designer-Handtasche sollte inklusive eines passenden Portemonnaies als Teil einer Werbeaktion sein, aber das Portemonnaie war nicht im Paket. Wie kann dieses Problem gelöst werden?"
4. Kunde: "Ich sehe, dass die Sendungsverfolgungsinformationen für meine Bestellung von Keramik-Kochgeschirr anzeigen, dass es geliefert wurde, aber ich habe es nicht erhalten. Könnten Sie mir dabei helfen, festzustellen, wo sich mein Paket befindet?"
5. Kunde: "Ich versuche ein Antikspiegel aus Ihrer Vintage-Kollektion zu kaufen, aber die Website gibt mir jedes Mal einen Fehler, wenn ich versuche, den Bestellvorgang abzuschließen. Gibt es einen anderen Weg, meinen Kauf abzuschließen?"
Spanish:
1. Cliente: "Recientemente ordené un conjunto de audífonos inalámbricos, pero recibí un modelo diferente. ¿Cuáles son los pasos que debo seguir para recibir el producto correcto que ordené?"
2. Cliente: "Compré una computadora personalizable el mes pasado y opté por actualizaciones específicas. Sin embargo, el rendimiento de la computadora no está a la altura de mis expectativas. ¿Puedo tener un técnico que revise esto, o debería considerar devolverla?"
3. Cliente: "Mi pedido de un bolso de diseñador debería haber incluido una billetera a juego como parte de una oferta promocional, pero la billetera no estaba en el paquete. ¿Cómo puedo resolver este problema?"
4. Cliente: "Veo que la información de seguimiento de mi pedido de utensilios de cocina de cerámica indica que ha sido entregado, pero aún no lo he recibido. ¿Podría ayudarme a determinar dónde se encuentra mi paquete?"
5. Cliente: "Estoy tratando de comprar un espejo antiguo de su colección de vintage, pero el sitio sigue dándome un error cada vez que trato de realizar el pago. ¿Hay otra forma de completar mi compra?"
Codigo de GENERACION
Puede utilizar el siguiente código para obtener una respuesta para la generación de código:
instructions = ({"role": "user", "content": "Write a program on Dijstra's algorithm using a priority queue in python:"})
prompt = format_instructions(instructions)
payload = {
"inputs": prompt,
"parameters": {"max_new_tokens": 1000}
}
response=predictor.predict(payload)
print_instructions(prompt, response)
Obtendrá el siguiente resultado:
> Input
(INST) Write a program on Dijstra's algorithm using a priority queue in python: (/INST)
> Output
(INST) Write a program on Dijstra's algorithm using a priority queue in python: (/INST) Here is a Python implementation of Dijkstra's algorithm using a priority queue (heapq module):
```python
import heapq
def dijkstra(graph, start):
# Initialize the priority queue with the starting vertex and its distance (0)
priority_queue = ((0, start))
# Initialize the distances dictionary with infinite distances for all vertices except the starting vertex
distances = {vertex: float('inf') for vertex in graph}
distances(start) = 0
# Initialize the previous dictionary to keep track of the shortest path
previous = {vertex: None for vertex in graph}
while priority_queue:
# Get the vertex with the smallest distance from the priority queue
current_distance, current_vertex = heapq.heappop(priority_queue)
# If the current distance is greater than the stored distance, skip this vertex
if current_distance > distances(current_vertex):
continue
# Update the distances of the adjacent vertices
for neighbor, weight in graph(current_vertex).items():
distance = current_distance + weight
# If the new distance is smaller than the stored distance, update the distance and previous vertex
if distance < distances(neighbor):
distances(neighbor) = distance
previous(neighbor) = current_vertex
# Add the neighbor to the priority queue
heapq.heappush(priority_queue, (distance, neighbor))
return distances, previous
# Example usage:
graph = {
'A': {'B': 1, 'C': 4},
'B': {'A': 1, 'C': 2, 'D': 5},
'C': {'A': 4, 'B': 2, 'D': 1},
'D': {'B': 5, 'C': 1}
}
distances, previous = dijkstra(graph, 'A')
print(distances) # {'A': 0, 'B': 1, 'C': 3, 'D': 4}
```
In this implementation, the `graph` parameter is a dictionary where the keys are the vertices and the values are dictionaries that map adjacent vertices to their weights. The `start` parameter is the starting vertex for the algorithm. The function returns two dictionaries: `distances` and `previous`. The `distances` dictionary maps each vertex to its shortest distance from the starting vertex, and the `previous` dictionary maps each vertex to its previous vertex in the shortest path.
razonamiento y matematicas
Puede utilizar el siguiente código para obtener una respuesta de razonamiento y matemáticas:
instructions = ({"role": "user", "content": """Sarah went to a car shop to buy a car from Fred for $20,000 in 2024. She plans to sell the car but it depreciates by 2% each year after she has bought it. She went to a dealer in which that dealer told her that the car has only depreciated by 1.4% each year. After 7 years of using the car, Sarah decides to sell it directly to another person.
How much did Sarah sell the car for and what year is it? Explain the steps before answering. It's ok to make some assumptions as you come to your answer.
"""})
prompt = format_instructions(instructions)
payload = {
"inputs": prompt,
"parameters": {"max_new_tokens": 2000, "do_sample": True}
}
response=predictor.predict(payload)
print_instructions(prompt, response)
Obtendrá el siguiente resultado:
(INST) Sarah went to a car shop to buy a car from Fred for $20,000 in 2024. She plans to sell the car but it depreciates by 2% each year after she has bought it. She went to a dealer in which that dealer told her that the car has only depreciated by 1.4% each year. After 7 years of using the car, Sarah decides to sell it directly to another person.
How much did Sarah sell the car for and what year is it? Explain the steps before answering. It's ok to make some assumptions as you come to your answer. (/INST) To solve this problem, we need to calculate the value of the car after 7 years, assuming two different annual depreciation rates: 2% and 1.4%.
First, let's calculate the value of the car after 7 years assuming a 2% annual depreciation rate:
Year 1: $20,000 - ($20,000 * 2%) = $19,600
Year 2: $19,600 - ($19,600 * 2%) = $19,208
Year 3: $19,208 - ($19,208 * 2%) = $18,821.60
Year 4: $18,821.60 - ($18,821.60 * 2%) = $18,442.22
Year 5: $18,442.22 - ($18,442.22 * 2%) = $18,071.62
Year 6: $18,071.62 - ($18,071.62 * 2%) = $17,709.76
Year 7: $17,709.76 - ($17,709.76 * 2%) = $17,356.58
So, assuming a 2% annual depreciation rate, the value of the car after 7 years would be approximately $17,356.58.
Next, let's calculate the value of the car after 7 years assuming a 1.4% annual depreciation rate:
Year 1: $20,000 - ($20,000 * 1.4%) = $19,728
Year 2: $19,728 - ($19,728 * 1.4%) = $19,463.23
Year 3: $19,463.23 - ($19,463.23 * 1.4%) = $19,205.80
Year 4: $19,205.80 - ($19,205.80 * 1.4%) = $18,955.66
Year 5: $18,955.66 - ($18,955.66 * 1.4%) = $18,712.73
Year 6: $18,712.73 - ($18,712.73 * 1.4%) = $18,476.95
Year 7: $18,476.95 - ($18,476.95 * 1.4%) = $18,248.33
So, assuming a 1.4% annual depreciation rate, the value of the car after 7 years would be approximately $18,248.33.
Now, since Sarah sells the car directly to another person, we can assume that she sold it for the higher of the two values. Therefore, she sold the car for $18,248.33.
As for the year in which she sold the car, since we know that Sarah purchased the car in 2024 and used it for 7 years, we can calculate the year as follows:
2024 + 7 = 2031
Therefore, Sarah sold the car in the year 2031.
So, Sarah sold the car for $18,248.33 in the year 2031.
Limpiar
Una vez que haya terminado de ejecutar el cuaderno, elimine todos los recursos que creó en el proceso para que se detenga su facturación. Utilice el siguiente código:
predictor.delete_model()
predictor.delete_endpoint()
Conclusión
En esta publicación, le mostramos cómo comenzar con Mixtral-8x22B en SageMaker Studio e implementar el modelo para inferencia. Dado que los modelos básicos están previamente entrenados, pueden ayudar a reducir los costos de capacitación e infraestructura y permitir la personalización para su caso de uso. Visite SageMaker JumpStart en SageMaker Studio ahora para comenzar.
Ahora que conoce Mistral ai y sus modelos Mixtral 8x22B, le recomendamos que implemente un punto final en SageMaker para realizar pruebas de inferencia y probar las respuestas usted mismo. Consulte los siguientes recursos para obtener más información:
Sobre los autores
Marco Punio es un arquitecto de soluciones centrado en la estrategia de IA generativa, soluciones de IA aplicadas y en la realización de investigaciones para ayudar a los clientes a hiperescalar en AWS. Es un tecnólogo calificado apasionado por el aprendizaje automático, la inteligencia artificial y las fusiones y adquisiciones. Marco reside en Seattle, WA, y le gusta escribir, leer, hacer ejercicio y crear aplicaciones en su tiempo libre.
Preston Tuggle es un arquitecto senior de soluciones especializado que trabaja en IA generativa.
Junio ganó es gerente de producto de amazon SageMaker JumpStart. Se centra en hacer que los modelos básicos sean fácilmente detectables y utilizables para ayudar a los clientes a crear aplicaciones de IA generativa. Su experiencia en amazon también incluye aplicación de compra móvil y entrega de última milla.
Dr. Ashish Khaitan es un científico aplicado senior con algoritmos integrados de amazon SageMaker y ayuda a desarrollar algoritmos de aprendizaje automático. Obtuvo su doctorado en la Universidad de Illinois Urbana-Champaign. Es un investigador activo en aprendizaje automático e inferencia estadística, y ha publicado numerosos artículos en conferencias NeurIPS, ICML, ICLR, JMLR, ACL y EMNLP.
shane rai es especialista principal en GenAI de la Organización Mundial de Especialistas de AWS (WWSO). Trabaja con clientes de todos los sectores para resolver sus necesidades comerciales más apremiantes e innovadoras utilizando la amplia gama de servicios de IA/ML basados en la nube de AWS, incluidas ofertas de modelos de proveedores de modelos básicos de primer nivel.
Hemant Singh es un Científico Aplicado con experiencia en amazon SageMaker JumpStart. Obtuvo su maestría del Instituto Courant de Ciencias Matemáticas y su B.tech del IIT Delhi. Tiene experiencia trabajando en una amplia gama de problemas de aprendizaje automático dentro del dominio del procesamiento del lenguaje natural, la visión por computadora y el análisis de series temporales.