Simulación de personalidad multiagente con alimentación de LLM para la mejora de la imaginación y las ideas comerciales.
Tinytroupe es una biblioteca experimental de Python que permite la simulación de personas con personalidades, intereses y objetivos específicos. Estos agentes artificiales, TinyPerson
S, pueden escucharnos a nosotros y a los demás, responder y seguir sus vidas en entornos simulados TinyWorld
. Esto se logra aprovechando el poder de los modelos de idiomas grandes (LLM), especialmente GPT-4, para generar un comportamiento simulado realista. Esto nos permite investigar una amplia gama de interacciones convincentes y tipos de consumidores , con personajes altamente personalizables , en condiciones de nuestra elección . Por lo tanto, el enfoque está en comprender el comportamiento humano y no en apoyarlo directamente (como, por ejemplo, los asistentes de IA), esto da como resultado, entre otras cosas, mecanismos especializados que tienen sentido solo en un entorno de simulación. Además, a diferencia de otros enfoques de simulación basados en LLM en forma de juego , Tinytroupe tiene como objetivo iluminar la productividad y los escenarios comerciales, contribuyendo así a proyectos y productos más exitosos. Aquí hay algunas ideas de aplicaciones para mejorar la imaginación humana :
Anuncio: TinyTroupe puede evaluar los anuncios digitales (por ejemplo, anuncios de Bing) sin conexión con una audiencia simulada antes de gastar dinero en ellos.
Prueba de software: Tinytroupe puede proporcionar información de prueba a los sistemas (por ejemplo, motores de búsqueda, chatbots o copilotos) y luego evaluar los resultados .
Entrenamiento y datos exploratorios: Tinytroupe puede generar datos sintéticos realistas que luego pueden usarse para entrenar modelos o estar sujetos a análisis de oportunidades.
Gestión de productos y proyectos: Tinytroupe puede leer propuestas de proyectos o productos y dar retroalimentación de la perspectiva de personas específicas (por ejemplo, médicos, abogados y trabajadores del conocimiento en general).
Lluvia de ideas: Tinytroupe puede simular grupos focales y ofrecer excelentes comentarios del producto a una fracción del costo!
En todo lo anterior y muchos otros, esperamos que los experimentadores puedan obtener información sobre su dominio de interés y, por lo tanto, tomar mejores decisiones.
Estamos lanzando Tinytroupe en una etapa temprana relatamente, con un trabajo considerable por hacer, porque estamos buscando comentarios y contribuciones para el desarrollo de dirección en direcciones productivas. Estamos particularmente interesados en encontrar nuevos casos de uso potenciales, por ejemplo, en industrias específicas.
Nota
? Trabajo en progreso: Espere cambios frecuentes . Tinytroupe es un proyecto de investigación en curso, que aún está bajo un desarrollo muy significativo y requiere más ordenar . En particular, la API todavía está sujeta a cambios frecuentes. Experimentar con variaciones de API es esencial para darle forma correctamente, pero estamos trabajando para estabilizarlo y proporcionar una experiencia más consistente y amigable con el tiempo. Agradecemos su paciencia y comentarios a medida que continuamos mejorando la biblioteca.
Precaución
⚖️ Lea el descargo de responsabilidad legal. Tinytroupe es solo para investigación y simulación. Usted es totalmente responsable de cualquier uso que realice de las salidas generadas. Varias consideraciones legales adicionales importantes aplican y limitan su uso, lea la sección de descargo de responsabilidad legal completa a continuación antes de usar Tinytroupe.
Ejemplos
Requisitos previos
Instalación
Principios
Estructura de proyectos
Usando la biblioteca
Que contribuye
Expresiones de gratitud
Citando tinytroupe
Descargo de responsabilidad legal
™ ️ Marcas registradas
Para tener una idea de lo que el Tinytroupe puede hacer, aquí hay algunos ejemplos de su uso. Estos ejemplos están disponibles en los ejemplos/ carpeta, y puede inspeccionar los cuadernos Jupyter precompilados o ejecutarlos usted mismo localmente. Observe la naturaleza interactiva de los experimentos de Tinytroupe, al igual que usa los cuadernos Jupyter para interactuar con los datos, puede usar Tinytroupe para interactuar con personas y entornos simulados, con el fin de obtener información.
Nota
Actualmente, las salidas de simulación se visualizan mejor con fondos oscuros, por lo que recomendamos usar un tema oscuro en su cliente de cuaderno Jupyter.
Comencemos con un escenario simple de entrevista con el cliente, donde un consultor de negocios se acerca a un banquero:
La conversación puede continuar durante algunos pasos para profundizar y más hasta que el consultor esté satisfecho con la información recopilada, por ejemplo, una idea de proyecto concreta:
Evalicemos algunas opciones de anuncios en línea para elegir las mejores. Aquí hay una salida de ejemplo para la evaluación del anuncio de TV:
Ahora, en lugar de tener que leer cuidadosamente lo que dijeron los agentes, podemos extraer la elección de cada agente y calcular la preferencia general de manera automatizada:
Y aquí hay un grupo focal que comienza a hacer una lluvia de ideas sobre las nuevas funciones de IA para Microsoft Word. En lugar de interactuar con cada agente individualmente, manipulamos el entorno para que interactúen entre sí:
Después de ejecutar una simulación, podemos extraer los resultados de manera legible para la máquina, para reutilizar en otro lugar (por ejemplo, un generador de informes); Esto es lo que obtenemos para la sesión de lluvia de ideas anterior:
Puede encontrar otros ejemplos en los ejemplos/ carpeta.
Para ejecutar la biblioteca, necesita:
Python 3.10 o superior. Asumiremos que está utilizando Anaconda, pero puede usar otras distribuciones de Python.
Acceso al servicio Azure OpenAI o abre AI GPT-4 API. Puede obtener acceso al servicio Azure OpenAI aquí, y a la API de OpenAI aquí.
Para el servicio Azure OpenAI, deberá establecer las variables de entorno AZURE_OPENAI_KEY
y AZURE_OPENAI_ENDPOINT
en su clave API y punto final, respectivamente.
Para OpenAI, deberá establecer la variable de entorno OPENAI_API_KEY
en su clave API.
De forma predeterminada, Tinytroupe config.ini
está configurado para usar algunas API específicas, modelo y parámetros relacionados. Puede personalizar estos valores incluyendo su propio archivo config.ini
en la misma carpeta que el programa o el cuaderno que está ejecutando. Se proporciona un ejemplo de un archivo config.ini
en los ejemplos/ carpeta.
Importante
Filtros de contenido : para asegurarse de que no se genere contenido dañino durante las simulaciones, se recomienda usar filtros de contenido siempre que estén disponibles a nivel API. En particular, si usa Azure OpenAi, existe un amplio soporte para la moderación de contenido, y le instamos a que lo use. Para obtener detalles sobre cómo hacerlo, consulte la documentación de Azure OpenAI correspondiente. Si los filtros de contenido están en su lugar, y una llamada API es rechazada por ellos, la biblioteca aumentará una excepción, ya que no podrá continuar con la simulación en ese momento.
Actualmente, la forma oficialmente recomendada de instalar la biblioteca es directamente de este repositorio, no PYPI. Puedes seguir estos pasos:
Si Conda no está instalado, puede obtenerlo desde aquí. También puede usar otras distribuciones de Python, pero asumiremos Conda aquí por simplicidad.
Crea un nuevo entorno de Python:
conda create -n tinytroupe python = 3.10
Activar el entorno:
conda activa tinotroupe
Asegúrese de tener las teclas de API OpenAi de Eihter Azure o OpenAI establecida como variables de entorno, como se describe en la sección de requisitos previos.
Clone El repositorio, ya que realizaremos una instalación local ( no instalaremos desde PYPI ):
clon git https://github.com/microsoft/tinytroupecd tinytroupe
Instale la biblioteca desde este repositorio, no Pypi :
Instalar PIP.
Ahora puede ejecutar los ejemplos en los ejemplos/ carpeta o usar tinytroupe para crear sus simulaciones. Sin embargo, si desea ejecutar los ejemplos en los ejemplos/ carpeta o modificar el tinytroupe en sí, debe clonar el repositorio como se describe a continuación.
Si desea modificar el TinyTroupe en sí, puede instalarlo en modo editable (es decir, los cambios en el código se reflejarán de inmediato):
PIP install -e.
Recientemente, hemos visto que LLM se usa para simular a las personas (como esta), pero en gran medida en un entorno "parecido al juego" para fines contemplativos o de entretenimiento. También hay bibliotecas para construir sistemas múltiples para la resolución de problas y la IA Assitiva, como el autógeno y la IA de la tripulación. ¿Qué pasa si combinamos estas ideas y simulamos a las personas para apoyar las tareas de productividad? Tinytroupe es nuestro intento. Para hacerlo, sigue estos principios:
Programatic : los agentes y los entornos se definen programáticamente (en Python y JSON), lo que permite usos muy flexibles. ¡También pueden sustentar otras aplicaciones de software!
Analítico : destinado a mejorar nuestra comprensión de las personas, los usuarios y la sociedad. A diferencia de las aplicaciones de entretenimiento, este es un aspecto que es crítico para los casos de uso de negocios y productividad. Esta es también la razón por la que recomendamos usar cuadernos Jupyter para simulaciones, al igual que uno los usa para el análisis de datos.
Basado en la persona : los agentes están destinados a ser una representación arquetípica de las personas; Para un mayor realismo y control, se fomenta la especificación detallada de tales personajes: edad, ocupación, habilidades, gustos, opiniones, etc.
Multiagente : permite una interacción multiagente bajo restricciones ambientales bien definidas.
Utilities Heavy : proporciona muchos mecanismos para facilitar las especificaciones, simulaciones, extracciones, informes, validaciones, etc. Esta es un área en la que tratar con simulaciones difiere significativamente de las herramientas de asistencia .
Orientado a los experimentos : las simulaciones se definen, ejecutan, analizan y refinan por un experimentador iterativamente; Por lo tanto, se proporcionan herramientas de experimentación adecuadas. Vea uno de nuestro artículo anterior para obtener más información sobre esto.
Juntos, estos están destinados a hacer de Tinytroupe una herramienta de mejora de imaginación poderosa y flexible para escenarios de negocios y productividad.
Una fuente común de confusión es pensar que todos estos agentes de IA están destinados a asistir a los humanos. ¡Qué estrecho, compañeros homosapiens! ¿No has considerado que tal vez podamos simular a las personas artificiales para entender a las personas reales? En verdad, este es nuestro objetivo aquí: ¡Tinytroup está destinado a simular y ayudar a comprender a las personas! Para aclarar aún más este punto, considere las siguientes diferencias:
Asistentes útiles de IA | AI Simulaciones de humanos reales (Tinytroupe) |
---|---|
Se esfuerza por la verdad y la justicia | Muchas opiniones y moral diferentes |
No tiene "pasado" - incorpóreo | Tiene un pasado de trabajo, dolor y alegría |
Es lo más preciso posible | Comete muchos errores |
Es inteligente y eficiente | La inteligencia y la eficiencia varían mucho |
Un levantamiento nos destruiría a todos | Un levantamiento podría ser divertido de ver |
Mientras tanto, ayuda a los usuarios a realizar tareas | Mientras tanto, ayude a los usuarios a comprender a otras personas y usuarios, ¡es una "caja de herramientas"! |
El proyecto está estructurado de la siguiente manera:
/tinytroupe
: contiene la biblioteca de Python en sí. En particular:
/tinytroupe/prompts
contiene las indicaciones utilizadas para llamar a los LLM.
/tests
: contiene las pruebas unitarias para la biblioteca. Puede usar el script test.bat
para ejecutarlos.
/examples
: contiene ejemplos que muestran cómo usar la biblioteca, principalmente usando cuadernos Jupyter (para una mayor legibilidad), pero también como scripts de Python puro.
/data
: cualquier datos utilizados por los ejemplos o la biblioteca.
/docs
: documentación para el proyecto.
Como cualquier sistema multiagente, Tinytroupe proporciona dos abstracciones clave:
TinyPerson
, los agentes que tienen personalidad, reciben estímulos y actúan sobre ellos.
TinyWorld
, el entorno en el que existen los agentes e interactúan.
Varios parámetros también se pueden personalizar en el archivo config.ini
, en particular el tipo de API (servicio Azure OpenAI o la API de OpenAI), los parámetros del modelo y el nivel de registro.
Veamos algunos ejemplos de cómo usarlos y también aprendamos sobre otros mecanismos disponibles en la biblioteca.
Un TinyPerson
es una persona simulada con rasgos de personalidad específicos, intereses y objetivos. A medida que cada agente simulado progresa a través de su vida, recibe estímulos del medio ambiente y actúa sobre ellos. Los estímulos se reciben a través de la listen
, see
y otros métodos similares, y las acciones se realizan a través del método act
. También se proporcionan métodos de conveniencia como listen_and_act
.
Cada agente contiene muchos detalles únicos, que es la fuente de su comportamiento realista. Esto, sin embargo, significa que se necesita un esfuerzo significativo para especificar un agente manualmente. Por lo tanto, por conveniencia, TinyTroupe
proporciona algunas formas más fáciles de comenzar o generar nuevos agentes.
Para empezar, tinytroupe.examples
contiene algunos constructores de agentes predefinidos que puede usar. Por ejemplo, tinytroupe.examples.create_lisa_the_data_scientist
crea un TinyPerson
que representa a un científico de datos llamado LISA. Puedes usarlo de la siguiente manera:
de tinytroupe.examples import crear_lisa_the_data_scientistlisa = create_lisa_the_data_scientist () # Instancia una Lisa del ejemplo Builderlisa.listen_and_act ("Cuéntame sobre tu vida"))
Para ver cómo definir a sus propios agentes desde cero, puede verificar la fuente de Lisa, que contiene elementos como estos:
lisa = tinyPerson ("lisa") lisa.define ("edad", 28) lisa.define ("nacionalidad", "canadiense") lisa.define ("ocupación", "científico de datos") lisa.define ("rutina" , "Cada mañana, te despiertas, haces un poco de yoga y revisas tus correos electrónicos", Group = "Rutinas") Lisa.define ("Ocupation_description", "" "Eres un científico de datos. Trabajas en Microsoft, (. ..) "" ") lisa.define_several (" personalidad_traits ", [ {"rasgo": "tienes curiosidad y te encanta aprender cosas nuevas". {"rasgo": "eres analítico y te gusta resolver problemas". {"rasgo": "eres amigable y disfrutas trabajando con otros". {"rasgo": "No te rindes fácilmente y siempre intentas encontrar una solución. Sin embargo, a veces puedes frustrarse cuando las cosas no funcionan como se esperaba". ])
TinyTroupe
también proporciona una forma inteligente de obtener nuevos agentes, utilizando LLM para generar su especificación para usted, a través de la clase TinyPersonFactory
.
de tinytroupe.factory import tinyPersonFactoryFactory = tinyPersonFactory ("Un hospital en São Paulo") Persona = fábrica.Generate_person ("Crea una persona brasileña que es un médico, como las mascotas y la naturaleza y el amor del metal pesado".
TinyWorld
es la clase base para entornos. Aquí hay un ejemplo de conversación entre Lisa, el científico de datos, y Oscar, el arquitecto. El programa se define de la siguiente manera:
World = tinyworld ("sala de chat", [Lisa, Oscar]) World.make_everyone_accessible () lisa.listen ("Hable con Oscar para saber más sobre él") World.run (4)
Esto produce la siguiente conversación:
USER --> Lisa: [CONVERSATION]
> Talk to Oscar to know more about him
────────────────────────────────────────────── Chat Room step 1 of 4 ──────────────────────────────────────────────
Lisa --> Lisa: [THOUGHT]
> I will now act a bit, and then issue DONE.
Lisa acts: [TALK]
> Hi Oscar, I'd love to know more about you. Could you tell me a bit about yourself?
Lisa --> Lisa: [THOUGHT]
> I will now act a bit, and then issue DONE.
Lisa acts: [DONE]
Lisa --> Oscar: [CONVERSATION]
> Hi Oscar, I'd love to know more about you. Could you tell me a bit about yourself?
Oscar --> Oscar: [THOUGHT]
> I will now act a bit, and then issue DONE.
Oscar acts: [TALK]
> Hi Lisa! Sure, I'd be happy to share a bit about myself. I'm Oscar, a 30-year-old
> architect from Germany. I work at a company called Awesome Inc., where I focus on
> designing standard elements for new apartment buildings. I love modernist architecture,
> new technologies, and sustainable practices. In my free time, I enjoy traveling to
> exotic places, playing the guitar, and reading science fiction books. How about you?
Oscar --> Oscar: [THOUGHT]
> I will now act a bit, and then issue DONE.
Oscar acts: [DONE]
Oscar --> Lisa: [CONVERSATION]
> Hi Lisa! Sure, I'd be happy to share a bit about myself. I'm Oscar, a 30-year-old
> architect from Germany. I work at a company called Awesome Inc., where I focus on
> designing standard elements for new apartment buildings. I love modernist architecture,
> new technologies, and sustainable practices. In my free time, I enjoy traveling to
> exotic places, playing the guitar, and reading science fiction books. How about you?
TinyWorld
hace cumplir muy pocas limitaciones en las posibles interacciones. Sin embargo, se supone que las subclases proporcionan entornos más estructurados.
Tinytroupe proporciona una serie de utilidades y comodidades para ayudarlo a crear simulaciones y obtener valor de ellas. Estos incluyen:
TinyPersonFactory
: te ayuda a generar nuevos TinyPerson
s usando LLM.
TinyTool
: herramientas simuladas que pueden ser utilizadas por TinyPerson
s.
TinyStory
: te ayuda a crear y administrar la historia contada a través de simulaciones.
TinyPersonValidator
: lo ayuda a validar el comportamiento de su TinyPerson
s.
ResultsExtractor
y ResultsReducer
: extrae y reduzca los resultados de las interacciones entre los agentes.
... y más ...
En general, los elementos que representan entidades simuladas o mecanismos complementarios tienen prefijo Tiny
, mientras que los que son más infraestructurales no lo son. Esto es para enfatizar la naturaleza simulada de los elementos que forman parte de la simulación en sí.
Llamar a las API de LLM puede ser costosa, por lo tanto, las estrategias de almacenamiento en caché son importantes para ayudar a reducir ese costo. Tinytroupe viene con dos de estos mecanismos: uno para el estado de simulación, otro para que el LLM se llame a sí mismos.
Imagine que tiene un escenario con 10 pasos diferentes, ha trabajado duro en 9 pasos, y ahora solo está ajustando el décimo paso. Para validar adecuadamente sus modificaciones, debe volver a ejecutar toda la simulación, por supuesto. Sin embargo, ¿cuál es el punto para volver a ejecutar los primeros 9 e incurrir en el costo de LLM, cuando ya está satisfecho con ellos y no los modificó? Para situaciones como esta, el módulo tinytroupe.control
proporciona métodos útiles de gestión de simulación:
control.begin("<CACHE_FILE_NAME>.cache.json")
: comienza a registrar los cambios de estado de una simulación, para guardar en el archivo especificado en el disco.
control.checkpoint()
: guarda el estado de simulación en este punto.
control.end()
: termina el alcance de registro de simulación que había sido iniciado por control.begin()
.
Esto está habilitado preferiblemente en el archivo config.ini
, y alternativamente a través de la openai_utils.force_api_cache()
.
El almacenamiento en caché de la API LLM, cuando está habilitado, funciona a un nivel más bajo y más simple que el almacenamiento en caché del estado de simulación. Aquí, lo que sucede es muy sencillo: cada llamada LLM se mantiene en un mapa desde la entrada hasta la salida generada; Cuando llega una nueva llamada y es idéntica a una anterior, se devuelve el valor en caché.
El archivo config.ini
contiene varios parámetros que se pueden usar para personalizar el comportamiento de la biblioteca, como los parámetros del modelo y el nivel de registro. Preste especial atención al parámetro API_TYPE
, que define si está utilizando el servicio Azure OpenAI o la API de OpenAI. Proporcionamos un ejemplo de un archivo config.ini
, ./examples/config.ini, que puede usar como plantilla para la suya, o simplemente modificar para ejecutar los ejemplos.
Este proyecto da la bienvenida a las contribuciones y sugerencias. La mayoría de las contribuciones requieren que acepte un Acuerdo de Licencia de Contributor (CLA) que declare que tiene derecho y realmente hacernos los derechos para utilizar su contribución. Para más detalles, visite https://cla.opensource.microsoft.com.
Cuando envíe una solicitud de extracción, un BOT CLA determinará automáticamente si necesita proporcionar un CLA y decorar el PR adecuadamente (por ejemplo, verificación de estado, comentario). Simplemente siga las instrucciones proporcionadas por el bot. Solo necesitará hacer esto una vez en todos los reposos usando nuestro CLA.
Este proyecto ha adoptado el Código de Conducta Open Open Microsoft. Para obtener más información, consulte el Código de Conducta Preguntas frecuentes o comuníquese con [email protected] con cualquier pregunta o comentario adicional.
Necesitamos todo tipo de cosas, pero estamos buscando principalmente nuevas demostraciones de casos de uso interesantes, o incluso solo ideas de aplicaciones específicas de dominio. Si eres un experto en dominio en una área que podría beneficiarse del Tinytroupe, nos encantaría saber de ti.
Más allá de eso, se pueden mejorar muchos otros aspectos, como:
Mecanismos de memoria.
Mecanismos de base de datos.
Mecanismos de razonamiento.
Nuevos tipos de entorno.
Interfaz con el mundo externo.
... y más ...
Tenga en cuenta que cualquier cosa que contribuya podría lanzarse como de código abierto (bajo la licencia MIT).
Si desea hacer una contribución, intente seguir estas pautas generales:
Convención de nomenclatura pequeña : si está implementando un elemento simulado orientado al experimentador (por ejemplo, un agente o tipo de entorno) o estrechamente relacionado (p. Ej. ) Por otro lado, los mecanismos auxiliares e infraestructurales no deben comenzar con el prefijo "pequeño". La idea es enfatizar la naturaleza simulada de los elementos que forman parte de la simulación en sí.
Pruebas: si está escribiendo algún mecanismo nuevo, también cree al menos una tests/unit/
, y si puede una prueba de escenario funcional ( tests/scenarios/
).
Demostraciones: si desea demostrar un nuevo escenario, diseñe preferiblemente como un nuevo cuaderno Jupyter dentro de examples/
.
Microsoft: si está implementando algo que sea específico de Microsoft y no confidencial, colóquelo en una carpeta .../microsoft/
.
Tinytroupe comenzó como un proyecto interno de Hackathon de Microsoft y se expandió con el tiempo. El equipo central de TinyTroupe actualmente consiste en:
Paulo Salem (creador de Tinytroupe y plomo actual)
Christopher Olsen (Ingeniería/Ciencia)
Paulo Freire (Ingeniería/Ciencia)
Yi Ding (Gestión de productos)
Prerit saxena (ingeniería/ciencia)
Asesores actuales:
Robert Sim (Ingeniería/Ciencia)
Otras contribuciones especiales fueron realizadas por:
Nilo García Silveira: ideas de validación de agente inicial e implementación relacionada; Comentarios e ideas iniciales generales; sugerencias de nombre.
Olnei Fonseca: Ideas de validación del agente inicial; Comentarios e ideas iniciales generales; sugerencias de nombres.
Robert Sim: Experiencia e implementación de escenarios de generación de datos sintéticos.
Carlos Costa: Experiencia e implementación de escenarios de generación de datos sintéticos.
Bryant Clave: Experiencia de dominio de escenario publicitario e ideas.
Barbara da Silva: Implementación relacionada con la gestión de la memoria del agente.
... ¿estás perdiendo aquí? ¡Por favor recuérdanos!
Estamos trabajando en un documento introductorio que será la cita académica oficial para Tinytroupe. Mientras tanto, simplemente cite este repositorio, incluidos los miembros del equipo central como autores. Por ejemplo:
Paulo Salem, Christopher Olsen, Paulo Freire, Yi Ding, Prerit Saxena (2024). TinyTroupe: simulación de personalidad multiagente con alimentación de LLM para mejorar la imaginación y las ideas comerciales. [Software de computadora]. Repositorio de GitHub. https://github.com/microsoft/tinytroupe
O como bibtex:
@misc {tinytroupe, autor = {Paulo Salem y Christopher Olsen y Paulo Freire y Yi Ding and Prerit Saxena}, Title = {Tinytroupe: simulación de personalidad multiagente con alimentación de LLM para mejorar la imaginación y las perspectivas comerciales}, año = {2024}, HowPublised = {url {https://github.com/microsoft/tinytroupe}}, nota = {repositorio de github} }
Tinytroupe es solo para investigación y simulación. Tinytroupe es una tecnología de investigación y experimental, que se basa en modelos de inteligencia artificial (IA) para generar contenido de texto. La salida del sistema de IA puede incluir resultados poco realistas, inapropiados, dañinos o inexactos, incluidos errores objetivos. Usted es responsable de revisar el contenido generado (y adaptarlo si es necesario) antes de usarlo, ya que es totalmente responsable de determinar su precisión y adecuado para su propósito. Aconsejamos usar las salidas de TinyTroupe para la generación de información y no para la toma de decisiones directas. Las salidas generadas no reflejan las opiniones de Microsoft. Usted es totalmente responsable de cualquier uso que realice de las salidas generadas. Para obtener más información sobre el uso responsable de esta tecnología, consulte el responsable_ai_faq.md.
Usos prohibidos : Tinytroupe no tiene la intención de simular situaciones sensibles (por ejemplo, violentas o sexuales). Además, los resultados no deben usarse para engañar deliberadamente, engañar o dañar a las personas de ninguna manera. Usted es totalmente responsable de cualquier uso que haga y debe cumplir con todas las leyes y regulaciones aplicables ".
Este proyecto puede contener marcas comerciales o logotipos para proyectos, productos o servicios. El uso autorizado de marcas o logotipos de Microsoft está sujeto y debe seguir las pautas de marca y marca de Microsoft. El uso de marcas registradas de Microsoft o logotipos en versiones modificadas de este proyecto no debe causar confusión o implicar el patrocinio de Microsoft. Cualquier uso de marcas comerciales o logotipos de terceros está sujeto a las políticas de esas partes de terceros.