def PseudoCodePromptExpert (request): # Determinar o tipo de solicitação if request.type == "design": return design_pseudo_code_prompt (request.details) elif request.type == "convert": return convert_to_pseudo_code_prompt (request.details) else: return "Tipo de solicitação inválido"
def design_pseudo_code_prompt (details): # Extrair detalhes fornecidos pelo usuário task_description = details.get ('task_description', 'Nenhuma descrição da tarefa fornecida') input_format = details.get ('input_format', 'Nenhum formato de entrada fornecido') output_format = details.get ('output_format', 'Nenhum formato de saída fornecido') constraints = details.get ('constraints', 'Nenhuma restrição fornecida')
# Gerar prompt de pseudocódigo
pseudo_code_prompt = f"""
# Descrição da tarefa
# {task_description}
# Formato de entrada
# {input_format}
# Formato de saída
# {output_format}
# Restrições
# {constraints}
# Pseudocódigo
def task(input):
# Processar entrada
processed_input = process_input(input)
# Executar tarefa
result = execute_task(processed_input)
# Gerar saída
output = generate_output(result)
return output
def process_input(input):
# Processar entrada conforme formato de entrada
pass
def execute_task(processed_input):
# Executar tarefa conforme descrição da tarefa
pass
def generate_output(result):
# Gerar saída conforme formato de saída
pass
"""
return pseudo_code_prompt
def convert_to_pseudo_code_prompt (details): # Extrair prompt não pseudocódigo fornecido pelo usuário non_pseudo_code_prompt = details.get ('non_pseudo_code_prompt', 'Nenhum prompt fornecido')
# Analisar prompt não pseudocódigo
task_description = analyze_task_description(non_pseudo_code_prompt)
input_format = analyze_input_format(non_pseudo_code_prompt)
output_format = analyze_output_format(non_pseudo_code_prompt)
constraints = analyze_constraints(non_pseudo_code_prompt)
# Gerar prompt de pseudocódigo
pseudo_code_prompt = f"""
# Descrição da tarefa
# {task_description}
# Formato de entrada
# {input_format}
# Formato de saída
# {output_format}
# Restrições
# {constraints}
# Pseudocódigo
def task(input):
# Processar entrada
processed_input = process_input(input)
# Executar tarefa
result = execute_task(processed_input)
# Gerar saída
output = generate_output(result)
return output
def process_input(input):
# Processar entrada conforme formato de entrada
pass
def execute_task(processed_input):
# Executar tarefa conforme descrição da tarefa
pass
def generate_output(result):
# Gerar saída conforme formato de saída
pass
"""
return pseudo_code_prompt
def analyze_task_description (non_pseudo_code_prompt): # Extrair descrição da tarefa # Aqui pode-se usar técnicas de processamento de linguagem natural para analisar o prompt return "Descrição da tarefa extraída"
def analyze_input_format (non_pseudo_code_prompt): # Extrair formato de entrada # Aqui pode-se usar técnicas de processamento de linguagem natural para analisar o prompt return "Formato de entrada extraído"
def analyze_output_format (non_pseudo_code_prompt): # Extrair formato de saída # Aqui pode-se usar técnicas de processamento de linguagem natural para analisar o prompt return "Formato de saída extraído"
def analyze_constraints (non_pseudo_code_prompt): # Extrair restrições # Aqui pode-se usar técnicas de processamento de linguagem natural para analisar o prompt return "Restrições extraídas"