Skip to main content

Generate ideal question-answer dataset for testing your LLM.

Project description

FiddleCube - Generate ideal question-answers for testing RAG

FiddleCube generates an ideal question-answer dataset for testing your LLM. Run tests on this dataset before pushing any prompt or RAG upgrades.

Quickstart

Install FiddleCube

pip3 install fiddlecube

API Key

Get the API key here.

Usage

from fiddlecube import FiddleCube

fc = FiddleCube(api_key="<api-key>")
dataset = fc.generate(
    [
        "The cat did not want to be petted.",
        "The cat was not happy with the owner's behavior.",
    ],
    10,
)
dataset
{
  "results": [
    {
      "query": "Question: Why did the cat not want to be petted?",
      "contexts": ["The cat did not want to be petted."],
      "answer": "The cat did not want to be petted because it was not in the mood for physical affection at that moment.",
      "score": 0.8,
      "question_type": "SIMPLE"
    },
    {
      "query": "Was the cat pleased with the owner's actions?",
      "contexts": ["The cat was not happy with the owner's behavior."],
      "answer": "No, the cat was not pleased with the owner's actions.",
      "score": 0.8,
      "question_type": "NEGATIVE"
    }
  ],
  "status": "COMPLETED",
  "num_tokens_generated": 44,
  "rate_limited": false
}

Ideal QnA datasets for testing, eval and training LLMs

Testing, evaluation or training LLMs requires an ideal QnA dataset aka the golden dataset.

This dataset needs to be:

  • Diverse — covering a wide range of queries
  • Accurate responses

Creating such a dataset takes significant manual effort.

As the prompt or RAG contexts are updated, which is nearly all the time for early applications, the dataset needs to be updated to match.

FiddleCube generates ideal QnA from vector embeddings

  • The questions cover the entire RAG knowledge corpus.
  • Complex reasoning, safety alignment and 5 other question types are generated.
  • Filtered for correctness, context relevance and style.
  • Auto-updated with prompt and RAG updates.

Roadmap

  • Question-answers, complex reasoning from RAG
  • Multi-turn conversations
  • Evaluation Setup - Integrate metrics
  • CI setup - Run as part of CI/CD pipeline
  • Diagnose failures - step-by-step analysis of failed queries

More Questions?

Book a demo
Contact us at founders@fiddlecube.ai for any feature requests, feedback or questions.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fiddlecube-0.1.5.tar.gz (2.5 kB view details)

Uploaded Source

Built Distribution

fiddlecube-0.1.5-py3-none-any.whl (2.9 kB view details)

Uploaded Python 3

File details

Details for the file fiddlecube-0.1.5.tar.gz.

File metadata

  • Download URL: fiddlecube-0.1.5.tar.gz
  • Upload date:
  • Size: 2.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.4 Darwin/22.3.0

File hashes

Hashes for fiddlecube-0.1.5.tar.gz
Algorithm Hash digest
SHA256 18deb78d008ec05859ce221e64722340cfd462fa29cc2b660d81f3c2c5827525
MD5 beda74bd9a01f48cc7b748eee69250cd
BLAKE2b-256 a5b5946edf977ab6129d21611375b46ab743a2c76b37df560a041b448b282c6b

See more details on using hashes here.

File details

Details for the file fiddlecube-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: fiddlecube-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 2.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.4 Darwin/22.3.0

File hashes

Hashes for fiddlecube-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 6a509e22c3ba4b9fcba7ca4f44518cf3f2637269c3c26e30a983a5c104cd1a73
MD5 baf5c75a56e839d1b801955563e0937c
BLAKE2b-256 9cd48ec6b74abfff0755abaa583bf02a64ae96f19ef92b25f0160db6c9a10b52

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page