chore: import upstream snapshot with attribution
tools_continuous_delivery / Private PyPI non-main branch release (push) Has been skipped
tools_continuous_delivery / Private PyPI main branch release (push) Failing after 2m42s
Publish Promptflow Doc / Build (push) Has been cancelled
Publish Promptflow Doc / Deploy (push) Has been cancelled
Flake8 Lint / flake8 (push) Has been cancelled
Spell check CI / Spell_Check (push) Has been cancelled
tools_continuous_delivery / Private PyPI non-main branch release (push) Has been skipped
tools_continuous_delivery / Private PyPI main branch release (push) Failing after 2m42s
Publish Promptflow Doc / Build (push) Has been cancelled
Publish Promptflow Doc / Deploy (push) Has been cancelled
Flake8 Lint / flake8 (push) Has been cancelled
Spell check CI / Spell_Check (push) Has been cancelled
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
from typing import List
|
||||
from promptflow.core import tool
|
||||
from promptflow.core import log_metric
|
||||
|
||||
|
||||
@tool
|
||||
def accuracy_aggregate(processed_results: List[int]):
|
||||
|
||||
num_exception = 0
|
||||
num_correct = 0
|
||||
|
||||
for i in range(len(processed_results)):
|
||||
if processed_results[i] == -1:
|
||||
num_exception += 1
|
||||
elif processed_results[i] == 1:
|
||||
num_correct += 1
|
||||
|
||||
num_total = len(processed_results)
|
||||
accuracy = round(1.0 * num_correct / num_total, 2)
|
||||
error_rate = round(1.0 * num_exception / num_total, 2)
|
||||
|
||||
log_metric(key="accuracy", value=accuracy)
|
||||
log_metric(key="error_rate", value=error_rate)
|
||||
|
||||
return {
|
||||
"num_total": num_total,
|
||||
"num_correct": num_correct,
|
||||
"num_exception": num_exception,
|
||||
"accuracy": accuracy,
|
||||
"error_rate": error_rate
|
||||
}
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
numbers = [1, 1, 1, 1, 0, -1, -1]
|
||||
accuracy = accuracy_aggregate(numbers)
|
||||
print("The accuracy is", accuracy)
|
||||
@@ -0,0 +1,29 @@
|
||||
$schema: https://azuremlschemas.azureedge.net/promptflow/latest/Flow.schema.json
|
||||
inputs:
|
||||
groundtruth:
|
||||
type: string
|
||||
default: "1"
|
||||
prediction:
|
||||
type: string
|
||||
default: "2"
|
||||
outputs:
|
||||
score:
|
||||
type: string
|
||||
reference: ${line_process.output}
|
||||
nodes:
|
||||
- name: line_process
|
||||
type: python
|
||||
source:
|
||||
type: code
|
||||
path: line_process.py
|
||||
inputs:
|
||||
groundtruth: ${inputs.groundtruth}
|
||||
prediction: ${inputs.prediction}
|
||||
- name: aggregate
|
||||
type: python
|
||||
source:
|
||||
type: code
|
||||
path: aggregate.py
|
||||
inputs:
|
||||
processed_results: ${line_process.output}
|
||||
aggregation: true
|
||||
@@ -0,0 +1,40 @@
|
||||
from promptflow.core import tool
|
||||
|
||||
|
||||
@tool
|
||||
def line_process(groundtruth: str, prediction: str) -> int:
|
||||
|
||||
processed_result = 0
|
||||
|
||||
if prediction == "JSONDecodeError" or prediction.startswith("Unknown Error:"):
|
||||
processed_result = -1
|
||||
return processed_result
|
||||
|
||||
try:
|
||||
groundtruth = float(groundtruth)
|
||||
prediction = float(prediction)
|
||||
except ValueError:
|
||||
processed_result = -1
|
||||
return processed_result
|
||||
|
||||
if round(prediction, 2) == round(groundtruth, 2):
|
||||
processed_result = 1
|
||||
|
||||
return processed_result
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
processed_result = line_process("1.0", "1")
|
||||
print("The processed result is", processed_result)
|
||||
|
||||
processed_result = line_process("3.14", "3.1415926")
|
||||
print("The processed result is", processed_result)
|
||||
|
||||
processed_result = line_process("2.1", "2.0")
|
||||
print("The processed result is", processed_result)
|
||||
|
||||
processed_result = line_process("1.0", "JSONDecodeError")
|
||||
print("The processed result is", processed_result)
|
||||
|
||||
processed_result = line_process("1.0", "No module named 'numpy'")
|
||||
print("The processed result is", processed_result)
|
||||
@@ -0,0 +1,20 @@
|
||||
{"question": "What is the sum of 5 and 3?", "groundtruth": "8", "answer": "8"}
|
||||
{"question": "Subtract 7 from 10.", "groundtruth": "3", "answer": "3"}
|
||||
{"question": "Multiply 6 by 4.", "groundtruth": "24", "answer": "24"}
|
||||
{"question": "Divide 20 by 5.", "groundtruth": "4", "answer": "4"}
|
||||
{"question": "What is the square of 7?", "groundtruth": "49", "answer": "49"}
|
||||
{"question": "What is the square root of 81?", "groundtruth": "9", "answer": "9"}
|
||||
{"question": "If a rectangle has a length of 10 and width of 5, what is the area?", "groundtruth": "50", "answer": "50"}
|
||||
{"question": "A circle has a radius of 7, what is the area? (Use 3.14 for pi)", "groundtruth": "153.86", "answer": "153.871"}
|
||||
{"question": "Solve for x in the equation 2x + 3 = 9.", "groundtruth": "3", "answer": "3"}
|
||||
{"question": "What is the value of x if 5x = 25?", "groundtruth": "5", "answer": "5"}
|
||||
{"question": "A car travels 200 miles in 4 hours. What is the average speed of the car?", "groundtruth": "50", "answer": "50"}
|
||||
{"question": "A car travels at a speed of 60 mph. How long will it take to travel 180 miles?", "groundtruth": "3", "answer": "3"}
|
||||
{"question": "If a car travels at a speed of 40 mph for 2 hours, how far will it travel?","groundtruth": "80", "answer": "80"}
|
||||
{"question":"A rectangle has length = 10 cm and width = 5 cm. What is its area?", "groundtruth":"50", "answer": "50"}
|
||||
{"question":"A circle has radius = 7 cm. What is its circumference? (Use pi =3.14)", "groundtruth":"43.96", "answer": "43.959"}
|
||||
{"question":"A triangle has base =10 cm and height =5 cm. What is its area?", "groundtruth":"25", "answer": "25"}
|
||||
{"question":"What is the slope of the line that passes through (2,3) and (4,7)?", "groundtruth":"2", "answer": "2"}
|
||||
{"question":"The distance between A and B is 2000km, A is moving towards B with speed 80km/hour, meanwhile B is moving towards A with speed 120km/hour, how many hours later A and B can meet?", "groundtruth":"10", "answer": "10"}
|
||||
{"question":"The lengths of the two perpendicular sides of a right triangle are 6cm and 8cm. What is the length of the hypotenuse?", "groundtruth": "10", "answer": "10"}
|
||||
{"question":"A is running with average speed 10km/hour, A already run half hour. B start to chase A along the same route with average speed 15km/hour, how many hours B will take to meet A?", "groundtruth":"1", "answer": "2"}
|
||||
Reference in New Issue
Block a user