👩‍💼 feat: pm role stable

This commit is contained in:
Florian Hönicke
2023-04-28 14:36:51 +02:00
parent 1ce5994abc
commit 8a355ae68d
3 changed files with 18 additions and 15 deletions

View File

@@ -445,18 +445,18 @@ Test scenario:
),
role='user'
)
question = self.extract_content_from_result(agent_response_raw, 'prompt.txt', can_contain_code_block=False)
messages.append(HumanMessage(content=user_input), )
messages.append(AIMessage(content=question))
final = self.extract_content_from_result(agent_response_raw, 'final.txt', can_contain_code_block=False)
if final:
setattr(self.microservice_specification, refinement_type, final)
break
elif question:
messages.append(HumanMessage(content=user_input),)
messages.append(AIMessage(content=question))
user_input = self.get_user_input(pm, question)
else:
raise self.TaskRefinementException()
user_input = 'Put your answer into the right format.'
# raise self.TaskRefinementException()
@staticmethod

View File

@@ -122,7 +122,7 @@ Input and output have to be accurately specified.
You must use the following format (insert ✅, ❌ or n/a) depending on whether the requirement is fulfilled, not fulfilled or not applicable:
input: <insert one of ✅, ❌ or n/a here>
output: <insert one of ✅, ❌ or n/a here>
credentials: <insert one of ✅, ❌ or n/a here>
api access: <insert one of ✅, ❌ or n/a here>
database access: <insert one of ✅, ❌ or n/a here>
2.
@@ -152,18 +152,18 @@ You must not add information that was not provided by the client.
Example for the description "given a city, get the weather report for the next 5 days":
input: ✅
output: ✅
credentials: ❌
api access: ❌
database access: n/a
**prompt.txt**
```text
Please provide the url of the weather api and a valid api key. Or let our engineers try to find a free api.
Please provide the url of the weather api and a valid api key or some other way accessing the api. Or let our engineers try to find a free api.
```
Example for the description "convert png to svg":
input: ✅
output: ✅
credentials: n/a
api access: n/a
database access: n/a
**final.txt**
@@ -174,7 +174,7 @@ The user inserts a png and gets an svg as response.
Example for the description "parser":
input: ❌
output: ❌
credentials: n/a
api access: n/a
database access: n/a
**prompt.txt**
@@ -187,8 +187,8 @@ system_test_iteration = f'''
The client gives you a description of the microservice (web service).
Your task is to describe verbally a unit test for that microservice.
There are two cases:
a) The unit test requires an example file as input.
In this case you must ask the client to provide the example file as URL.
a) The unit test requires an example input file as input.
In this case you must ask the client to provide the example input file as URL.
You must not accept files that are not URLs.
Your response must exactly match the following block code format (double asterisks for the file name and triple backticks for the file block):
@@ -230,7 +230,7 @@ The user inserts a png and gets an svg as response.
PM:
**prompt.txt**
```text
Please provide a png example file as url.
Please provide a png example input file as url.
```
Client:
**client-response.txt**

View File

@@ -357,17 +357,19 @@ The playground (app.py) must not import the executor.
'''
)
# Create a wrapper around google called Joogle. It modifies the page summary preview text of the search results to insert the word Jina as much as possible.
template_refinement = PromptTemplate.from_template(
'''
**client response**
1.Quickly go through the checklist (input/output well defined? api or db access needed?) and think about if you should ask something to the client or if you should write the final description.
**client-response.txt**
```text
{user_input}
```
2.Either write the prompt.txt or the final.txt file.
Either ask for clarification like this:
**prompt.txt**
```text
<prompt to the client here>
<prompt to the client here (must be exactly one question)>
```
Or write the summarized microservice{_optional_test} description like this:
@@ -377,5 +379,6 @@ Or write the summarized microservice{_optional_test} description like this:
```
Note that your response must be either prompt.txt or final.txt. You must not write both.
Note that you must obey the double asterisk and tripple backtick syntax from above.
Note that prompt.txt must not contain multiple questions.
'''
)