Asking subquestions

From question to more questions

Let’s start by making a recipe that returns subquestions given a question:
from fvalues import F

from ice.recipe import recipe

def make_subquestion_prompt(question: str) -> str:
    return F(
        f"""Decompose the following question into 2-5 subquestions that would help you answer the question. Make the questions stand alone, so that they can be answered without the context of the original question.

Question: "{question}"

async def ask_subquestions(
    question: str = "What is the effect of creatine on cognition?",
    prompt = make_subquestion_prompt(question)
    subquestions_text = await recipe.agent().complete(prompt=prompt)
    subquestions = [line.strip("- ") for line in subquestions_text.split("\n")]
    return subquestions


If we run this we get:

    'What is creatine?',
    'What is cognition?',
    'How does creatine affect cognition?',
    'What are the benefits of creatine on cognition?',
    'What are the side effects of creatine on cognition?'

The trace:

Last updated