Descargo de responsabilidad : los scripts proporcionados en este repositorio reflejan el estado de servicio Amazon Q para negocios, ya que fue lanzado en diciembre de 2023 por AWS en modo de vista previa. Debido a este modo de vista previa, las características de Amazon Q y su implementación pueden cambiar en cualquier momento durante la vista previa y para la disponibilidad general. Dichos cambios pueden requerir actualizaciones a este repositorio.
Este proyecto reúne diversas herramientas y scripts de utilidad para explorar y operar Amazon Q para negocios. Agregaremos nuevos scripts basados en su demanda: ¡no dude en cortar un boleto aquí si tiene una necesidad o idea!
Actualmente proporcionamos las siguientes utilidades:
Todos esos scripts devuelven estructuras JSON que se pueden procesar aún más en tuberías de shell con diversas utilidades como JQ, SED, AWK, etc.
Esos guiones confían en el Python AWS SDK. Todas las API relacionadas con Q para negocios se describen en detalle en la documentación pública SDK Boto3.
Amazon Q es un asistente alimentado por el AI generativo que se puede configurar para responder preguntas, proporcionar resúmenes, generar contenido y completar tareas basadas en datos en su empresa. Amazon Q proporciona información inmediata y relevante a sus usuarios, y ayuda a optimizar las tareas y acelerar la resolución de problemas.
Una aplicación de Amazon Q se basa en un corpus de documentos para construir su índice Q específico. Este corpus de documentos se almacena en uno o más repositorios de documentos (S3, JIRA, Quip, etc.) llamados fuentes de datos Q. Las respuestas a las preguntas del usuario del Asistente se prepararán a través del apalancamiento de la tecnología RAG.
La generación de recuperación aumentada (RAG) es una técnica de procesamiento del lenguaje natural (PNL). Se compone de un sistema basado en modelos de lenguaje, generalmente un modelo de lenguaje grande (LLM), que accede a fuentes de conocimiento externas para completar las tareas. Esto permite más contextualidad, consistencia objetiva, mejora la confiabilidad de las respuestas generadas y ayuda a mitigar el problema de las "alucinaciones".
Los scripts de este proyecto suponen que el usuario de AWS reflejado por las variables de entorno llamadas AWS_ACCESS_KEY_ID y AWS_SECRET_ACCESS_KEY tiene las credenciales IAM adecuadas en términos de autorizaciones para acceder a las API de Amazon Q en la cuenta AWS. Consulte Ejemplos de políticas de IAM en la sección de seguridad de la documentación Q para todos los detalles.
Desde el directorio /src de este proyecto, los siguientes comandos se pueden usar para obtener todas las opciones de comando
para list_applications.py
%python3 q_list_applications.py -h
usage: q_list_applications.py [-h] [-v]
list applications, indexes, retrievers, web experiences, plugins, etc. running in Amazon Q for business
options:
-h, --help show this help message and exit
-v, --verbose verbose mode
q_list_data_source_sync_jobs
% python3 q_list_data_source_sync_jobs.py -h
usage: q_list_data_source_sync_jobs.py [-h] [-a APP_ID] [-i IDX_ID] [-d DS_ID] [-v]
list synchronization jobs executed for a given data source of an Amazon Q application
options:
-h, --help show this help message and exit
-a APP_ID, --app_id APP_ID
Q application id
-i IDX_ID, --idx_id IDX_ID
Q data source id
-d DS_ID, --ds_id DS_ID
Q data source id
-v, --verbose verbose mode
para q_list_documents.py
% python3 q_list_documents.py -h
usage: q_list_documents.py [-h] [-a APP_ID] [-i IDX_ID] [-incl INCLUDE] [-excl EXCLUDE] [-inv] [-v]
list documents indexed by Amazon Q
options:
-h, --help show this help message and exit
-a APP_ID, --app_id APP_ID
Q application id
-i IDX_ID, --idx_id IDX_ID
Q index id
-incl INCLUDE, --include INCLUDE
comma-separated list of status to include
-excl EXCLUDE, --exclude EXCLUDE
comma-separated list of status to exclude
-inv, --inventory with document inventory
-v, --verbose verbose mode
para q_list_conversations.py
% python3 q_list_conversations.py -h
usage: q_list_conversations.py [-h] [-a APP_ID] [-u USR_ID] [-v]
list documents indexed by Amazon Q
options:
-h, --help show this help message and exit
-a APP_ID, --app_id APP_ID
Q application id
-u USR_ID, --usr_id USR_ID
Q user id
-v, --verbose verbose mode
para q_chat.py
% python3 q_chat.py -h
usage: q_chat.py [-h] [-a APP_ID] [-u USR_ID] [-p PROMPT] [-f FILE] [-c CNV_ID] [-m MSG_ID] [-d] [-v]
ask a question to a Q application and get answer
options:
-h, --help show this help message and exit
-a APP_ID, --app_id APP_ID
Q application id
-u USR_ID, --usr_id USR_ID
Q index id
-p PROMPT, --prompt PROMPT
question prompt or path to file with list of prompts
-f FILE, --file FILE path to attachment file
-c CNV_ID, --cnv_id CNV_ID
Q conversation id (only to continue an existing conversation)
-m MSG_ID, --msg_id MSG_ID
Q parent message id (only to continue an existing conversation)
-d, --details full conversation details
-v, --verbose verbose mode