diff --git a/docs/_static/llama-stack-spec.html b/docs/_static/llama-stack-spec.html index 057abb5fa..b35c325a8 100644 --- a/docs/_static/llama-stack-spec.html +++ b/docs/_static/llama-stack-spec.html @@ -6812,7 +6812,10 @@ "enum": [ "post-training/messages", "eval/question-answer", - "eval/messages-answer" + "eval/messages-answer", + "scoring/question-generation-answer", + "scoring/messages-generation-answer", + "scoring/generation-answer" ], "title": "DatasetPurpose", "description": "Purpose of the dataset. Each purpose has a required input data schema." @@ -8792,7 +8795,11 @@ "type": "string", "enum": [ "post-training/messages", - "eval/messages-answer" + "eval/question-answer", + "eval/messages-answer", + "scoring/question-generation-answer", + "scoring/messages-generation-answer", + "scoring/generation-answer" ], "title": "DatasetPurpose", "description": "Purpose of the dataset. Each purpose has a required input data schema." @@ -9887,9 +9894,12 @@ "enum": [ "post-training/messages", "eval/question-answer", - "eval/messages-answer" + "eval/messages-answer", + "scoring/question-generation-answer", + "scoring/messages-generation-answer", + "scoring/generation-answer" ], - "description": "The purpose of the dataset. One of - \"post-training/messages\": The dataset contains a messages column with list of messages for post-training. { \"messages\": [ {\"role\": \"user\", \"content\": \"Hello, world!\"}, {\"role\": \"assistant\", \"content\": \"Hello, world!\"}, ] } - \"eval/question-answer\": The dataset contains a question column and an answer column for evaluation. { \"question\": \"What is the capital of France?\", \"answer\": \"Paris\" } - \"eval/messages-answer\": The dataset contains a messages column with list of messages and an answer column for evaluation. { \"messages\": [ {\"role\": \"user\", \"content\": \"Hello, my name is John Doe.\"}, {\"role\": \"assistant\", \"content\": \"Hello, John Doe. How can I help you today?\"}, {\"role\": \"user\", \"content\": \"What's my name?\"}, ], \"answer\": \"John Doe\" }" + "description": "The purpose of the dataset. One of - \"post-training/messages\": The dataset contains a messages column with list of messages for post-training. { \"messages\": [ {\"role\": \"user\", \"content\": \"Hello, world!\"}, {\"role\": \"assistant\", \"content\": \"Hello, world!\"}, ] } - \"eval/question-answer\": The dataset contains a question column and an answer column for evaluation. { \"question\": \"What is the capital of France?\", \"answer\": \"Paris\" } - \"eval/messages-answer\": The dataset contains a messages column with list of messages and an answer column for evaluation. { \"messages\": [ {\"role\": \"user\", \"content\": \"Hello, my name is John Doe.\"}, {\"role\": \"assistant\", \"content\": \"Hello, John Doe. How can I help you today?\"}, {\"role\": \"user\", \"content\": \"What's my name?\"}, ], \"answer\": \"John Doe\" } - \"scoring/question-generation-answer\": The dataset contains a question column, a generation column and an answer column for scoring. { \"question\": \"What is the capital of France?\", \"generation\": \"Paris\", \"answer\": \"Paris\" } - \"scoring/messages-generation-answer\": The dataset contains a messages column with list of messages, a generation column and an answer column for scoring. { \"messages\": [ {\"role\": \"user\", \"content\": \"Hello, my name is John Doe.\"}, {\"role\": \"assistant\", \"content\": \"Hello, John Doe. How can I help you today?\"}, {\"role\": \"user\", \"content\": \"What's my name?\"}, ], \"generation\": \"John Doe\", \"answer\": \"John Doe\" } - \"scoring/generation-answer\": The dataset contains a generation column and an answer column for scoring. { \"generation\": \"Paris\", \"answer\": \"Paris\" }" }, "source": { "$ref": "#/components/schemas/DataSource", diff --git a/docs/_static/llama-stack-spec.yaml b/docs/_static/llama-stack-spec.yaml index a06cdcc95..54d548e57 100644 --- a/docs/_static/llama-stack-spec.yaml +++ b/docs/_static/llama-stack-spec.yaml @@ -4718,6 +4718,9 @@ components: - post-training/messages - eval/question-answer - eval/messages-answer + - scoring/question-generation-answer + - scoring/messages-generation-answer + - scoring/generation-answer title: DatasetPurpose description: >- Purpose of the dataset. Each purpose has a required input data schema. @@ -6070,7 +6073,11 @@ components: type: string enum: - post-training/messages + - eval/question-answer - eval/messages-answer + - scoring/question-generation-answer + - scoring/messages-generation-answer + - scoring/generation-answer title: DatasetPurpose description: >- Purpose of the dataset. Each purpose has a required input data schema. @@ -6779,6 +6786,9 @@ components: - post-training/messages - eval/question-answer - eval/messages-answer + - scoring/question-generation-answer + - scoring/messages-generation-answer + - scoring/generation-answer description: >- The purpose of the dataset. One of - "post-training/messages": The dataset contains a messages column with list of messages for post-training. { @@ -6790,7 +6800,18 @@ components: column for evaluation. { "messages": [ {"role": "user", "content": "Hello, my name is John Doe."}, {"role": "assistant", "content": "Hello, John Doe. How can I help you today?"}, {"role": "user", "content": "What's - my name?"}, ], "answer": "John Doe" } + my name?"}, ], "answer": "John Doe" } - "scoring/question-generation-answer": + The dataset contains a question column, a generation column and an answer + column for scoring. { "question": "What is the capital of France?", "generation": + "Paris", "answer": "Paris" } - "scoring/messages-generation-answer": The + dataset contains a messages column with list of messages, a generation + column and an answer column for scoring. { "messages": [ {"role": "user", + "content": "Hello, my name is John Doe."}, {"role": "assistant", "content": + "Hello, John Doe. How can I help you today?"}, {"role": "user", "content": + "What's my name?"}, ], "generation": "John Doe", "answer": "John Doe" + } - "scoring/generation-answer": The dataset contains a generation column + and an answer column for scoring. { "generation": "Paris", "answer": "Paris" + } source: $ref: '#/components/schemas/DataSource' description: >- diff --git a/llama_stack/apis/datasets/datasets.py b/llama_stack/apis/datasets/datasets.py index e1285ef9a..812b373f9 100644 --- a/llama_stack/apis/datasets/datasets.py +++ b/llama_stack/apis/datasets/datasets.py @@ -38,11 +38,37 @@ class DatasetPurpose(Enum): ], "answer": "John Doe" } + :cvar scoring/question-generation-answer: The dataset contains a question column, a generation column and an answer column. + { + "question": "What is the capital of France?", + "generation": "Paris", + "answer": "Paris" + } + :cvar scoring/messages-generation-answer: The dataset contains a messages column with list of messages, a generation column and an answer column. + { + "messages": [ + {"role": "user", "content": "Hello, my name is John Doe."}, + {"role": "assistant", "content": "Hello, John Doe. How can I help you today?"}, + {"role": "user", "content": "What's my name?"}, + ], + "generation": "John Doe", + "answer": "John Doe" + } + :cvar scoring/generation-answer: The dataset contains a generation column and an answer column. + { + "generation": "Paris", + "answer": "Paris" + } """ post_training_messages = "post-training/messages" + eval_question_answer = "eval/question-answer" eval_messages_answer = "eval/messages-answer" + scoring_question_generation_answer = "scoring/question-generation-answer" + scoring_messages_generation_answer = "scoring/messages-generation-answer" + scoring_generation_answer = "scoring/generation-answer" + # TODO: add more schemas here @@ -180,6 +206,27 @@ class Datasets(Protocol): ], "answer": "John Doe" } + - "scoring/question-generation-answer": The dataset contains a question column, a generation column and an answer column for scoring. + { + "question": "What is the capital of France?", + "generation": "Paris", + "answer": "Paris" + } + - "scoring/messages-generation-answer": The dataset contains a messages column with list of messages, a generation column and an answer column for scoring. + { + "messages": [ + {"role": "user", "content": "Hello, my name is John Doe."}, + {"role": "assistant", "content": "Hello, John Doe. How can I help you today?"}, + {"role": "user", "content": "What's my name?"}, + ], + "generation": "John Doe", + "answer": "John Doe" + } + - "scoring/generation-answer": The dataset contains a generation column and an answer column for scoring. + { + "generation": "Paris", + "answer": "Paris" + } :param source: The data source of the dataset. Examples: - { "type": "uri",