CC_flows / CF_CodeWithPlan.yaml
martinjosifoski's picture
Add an abstract CodeTesting Flow and working CF_CodeTesting Flow.
6fffc74
raw
history blame
2.54 kB
name: "CodeFlowWithPlan_Flow"
verbose: True
description: "ToDO: add description"
model_name: "gpt-4"
generation_parameters:
n: 1
max_tokens: 3000
temperature: 0.3
model_kwargs:
top_p: 0.2
frequency_penalty: 0
presence_penalty: 0
system_message_prompt_template:
_target_: langchain.PromptTemplate
template: |2-
Your goal is to provide executable Python code that solves a competitive programming problem. The code should correctly handle all corner cases in order to pass the hidden test cases, which are used to evaluate the correctness of the solution.
The user will specify the problem by providing you with:
- the problem statement
- input description
- output description
- example test cases
- (optional) explanation of the test cases
Additionally, the user will provide you with a conceptual solution to the problem which should guide your reasoning and the code implementation.
The user will provide you with a task and an output format that you will strictly follow.
input_variables: []
template_format: jinja2
human_message_prompt_template:
_target_: langchain.PromptTemplate
template: "{{query}}"
input_variables:
- "query"
template_format: jinja2
query_message_prompt_template:
_target_: langchain.PromptTemplate
template: |2-
# Problem statement
{{problem_description}}
# Input description
{{input_description}}
# Output description
{{output_description}}
{{io_examples_and_explanation}}
# Conceptual solution
{{plan}}
The input should be read from the standard input and the output should be passed to the standard output.
Consider the problem statement and the conceptual solution, and return Python code that solves the problem. Reply in the following format:
```python
{{code_placeholder}}
```
input_variables:
- "problem_description"
- "input_description"
- "output_description"
- "io_examples_and_explanation"
- "plan"
partial_variables:
code_placeholder: "{{python_code}}"
template_format: jinja2
input_keys:
- "problem_description"
- "input_description"
- "output_description"
- "io_examples_and_explanation"
- "plan"
output_keys:
- "code"
output_data_transformations:
- _target_: flows.data_transformations.RegexFirstOccurrenceExtractor
regex: '(?<=```python)([\s\S]*?)(?=```)'
regex_fallback: '(?<=```)([\s\S]*?)(?=```)'
output_key: "code"
strip: True
assert_unique: True
verbose: True