En el área de ingeniería rápida , la gestión de múltiples versiones de indicaciones puede volverse abrumador. Las personas y los equipos a menudo enfrentan desafíos en el seguimiento y la organización de diferentes tipos de indicaciones, lo que lleva a la posibilidad de perderse algunos de los mejores.
Un intento experimental de código abierto para facilitar la vida de los ingenieros y desarrolladores rápidos. La forma desorganizada de administrar las indicaciones hace que el trabajo sea difícil, por lo que aportamos un enfoque estructurado para ayudar a los ingenieros y desarrolladores de impulsos a rastrear, compartir y manejar las indicaciones fácilmente con su equipo. El organizador rápido .
Organización basada en tareas : los usuarios pueden organizar indicaciones bajo diferentes tareas (resumen, descubrimiento de temas, identificación de intención, etc.), lo que permite una vista clara y categorizada de cada mensaje.
Gestión de versiones rápidas : dentro de cada tarea, los usuarios pueden crear y administrar múltiples versiones de indicaciones, cada una con su conjunto único de parámetros.
Visualización de la diferencia : los usuarios pueden aprovechar la función integrada de 'show diff' para visualizar y comparar diferencias, adiciones o deleciones entre varias versiones rápidas, resaltadas para una facilidad fácil.
Configuración de parámetros de solicitud : los usuarios pueden configurar fácilmente varios parámetros como temperatura, top_p, tokens máximo y umbral para cada versión de la solicitud.
Seguimiento de estado : la aplicación permite a los usuarios establecer y rastrear el estado de cada aviso, ayudando en la evaluación y la optimización rápida.
Función de comentarios : cada versión solicitada tiene un cuadro de comentarios asociado, lo que permite a los usuarios anotar notas importantes o información relacionada con el mensaje.
Administración de indicaciones del sistema : junto con las indicaciones del usuario, la aplicación también permite la administración de las indicaciones del sistema, cada una con su función de comentarios.
Guardar y descargar : los usuarios pueden guardar su progreso y descargar las indicaciones organizadas en formato YAML, facilitando el intercambio y almacenamiento fácil.
Integración YAML para tuberías de desarrolladores : esta aplicación facilita a la perfección los desarrolladores al permitir la incorporación directa de archivos YAML en sus tuberías de desarrollo, lo que hace que el proceso de desarrollo sea más intuitivo y menos propenso a los errores.
Aplicación de usuario único : esta aplicación está actualmente diseñada para uso individual, con planes para futuras actualizaciones para admitir múltiples usuarios.
Vaya a la carpeta "Organizador rápido" y ejecute:
python app.py
He usado Python 3.8
Descargue el archivo YAML del organizador de solicitud y cargue con este método:
import yaml
def read_template():
directory_path = "data.yaml"
yaml_content = ''
with open(directory_path, "r") as f:
try:
yaml_content = yaml.safe_load(f)
except yaml.YAMLError as e:
print(f"Error parsing {directory_path}: {e}")
return yaml_content
def get_prompt(task, version):
yaml_content = read_template()
version = "version"+"_"+str(version)
return yaml_content[task]['prompts']['version_1']["prompt"]
prompt = get_prompt("Intent",1)
def get_parameters(task, version):
yaml_content = read_template()
version = "version"+"_"+str(version)
temp = yaml_content[task]['prompts'][version]['temperature']
top_p = yaml_content[task]['prompts'][version]['top_p']
max_tokens = yaml_content[task]['prompts'][version]['max_tokens']
threshold = yaml_content[task]['prompts'][version]['threshold']
return {"temperature":temp, "top_p":top_p, "max_tokens":max_tokens, "threshold":threshold}
params = get_parameters('Intent',1)
Dentro de los marcadores de posición de uso rápido y reemplácelos con contenido correcto:
Solicitud de ejemplo:
Te estoy dando un pasaje y tienes que encontrar las intenciones más importantes que tienen un alto valor de discusión. Todas las intentos deben estar en formato de cadena y la puntuación de relevancia debe estar en formato de flotación. Cualquier explicación. n npassage: n n ## PlaceHolder_1 ##
Reemplace el ## PlaceLApader_1 ## dinámicamente con el pasaje de entrada.
passage_content = "Your passage data"
prompt_passage = get_prompt('Intent',1)
prompt_passage = prompt_passage.replace("##placeholder_1##", passage_content)
Use el archivo Helper.py para usar todos estos métodos.
openai.api_key = 'your-api-key-here'
passage_content = "Your data"
prompt_passage = get_prompt("Intent", 1) # This will provide you the prompt for the specified version and task.
system_prompt = get_sysprompt("Intent", 1) # This will provide you the system prompt for the specified version and task.
prompt_param = get_parameters("Intent", 1) # This will provide you the all parameters for the specified version and task.
prompt_passage = prompt_passage.replace("##placeholder_1##", passage_content)
response = openai.ChatCompletion.create(
model = "gpt-3.5-turbo",
temperature = prompt_param["temperature"],
top_p = prompt_param["top_p"],
max_tokens = prompt_param["max_tokens"],
messages=[
{"role": "system", "content": prompt_passage},
{"role": "user", "content": system_prompt},
]
)
# Extracting response
answer = response['choices'][0]['message']['content']
print(answer)
Al adherirse a los pasos descritos, puede adoptar un enfoque estructurado y sistemático. El organizador rápido le permite diseñar, examinar meticulosamente e implementar sus indicaciones con garantía. Esto lleva al desarrollo de aplicaciones AI avanzadas y confiables.
Por ahora, ejecuto esta aplicación de mi proyecto para evitar ir y venir con el archivo YAML. Todas mis modificaciones permanecen a nivel de proyecto. La idea es, en el futuro cercano, hacer que esta integración sea perfecta.
Y más ...
Todo con facilidad de uso.
Happy Sement ,: Clap: ¿Organizador rápido ?