diff --git a/packages/core/src/Prompt.ts b/packages/core/src/Prompt.ts
index 74d02c4bdbfac22fefd424dd78f1c889f4de820a..ecfddcdc77e7a2bf3d4a6539338436bf7b2b11b1 100644
--- a/packages/core/src/Prompt.ts
+++ b/packages/core/src/Prompt.ts
@@ -114,3 +114,82 @@ ${context}
 Question: ${query}
 Answer:`;
 };
+
+/*
+PREFIX = """\
+Given a user question, and a list of tools, output a list of relevant sub-questions \
+that when composed can help answer the full user question:
+
+"""
+
+
+example_query_str = (
+    "Compare and contrast the revenue growth and EBITDA of Uber and Lyft for year 2021"
+)
+example_tools = [
+    ToolMetadata(
+        name="uber_10k",
+        description="Provides information about Uber financials for year 2021",
+    ),
+    ToolMetadata(
+        name="lyft_10k",
+        description="Provides information about Lyft financials for year 2021",
+    ),
+]
+example_tools_str = build_tools_text(example_tools)
+example_output = [
+    SubQuestion(
+        sub_question="What is the revenue growth of Uber", tool_name="uber_10k"
+    ),
+    SubQuestion(sub_question="What is the EBITDA of Uber", tool_name="uber_10k"),
+    SubQuestion(
+        sub_question="What is the revenue growth of Lyft", tool_name="lyft_10k"
+    ),
+    SubQuestion(sub_question="What is the EBITDA of Lyft", tool_name="lyft_10k"),
+]
+example_output_str = json.dumps([x.dict() for x in example_output], indent=4)
+
+EXAMPLES = (
+    """\
+# Example 1
+<Tools>
+```json
+{tools_str}
+```
+
+<User Question>
+{query_str}
+
+
+<Output>
+```json
+{output_str}
+```
+
+""".format(
+        query_str=example_query_str,
+        tools_str=example_tools_str,
+        output_str=example_output_str,
+    )
+    .replace("{", "{{")
+    .replace("}", "}}")
+)
+
+SUFFIX = """\
+# Example 2
+<Tools>
+```json
+{tools_str}
+```
+
+<User Question>
+{query_str}
+
+<Output>
+"""
+
+DEFAULT_SUB_QUESTION_PROMPT_TMPL = PREFIX + EXAMPLES + SUFFIX
+*/
+export const defaultSubQuestionPrompt: SimplePrompt = (input) => {
+  return "";
+};
diff --git a/packages/core/src/QuestionGenerator.ts b/packages/core/src/QuestionGenerator.ts
index 7391888313dbc533cae5b082a161666bb1ab18e0..35689160b81941be62de2f74345940b25e7bee78 100644
--- a/packages/core/src/QuestionGenerator.ts
+++ b/packages/core/src/QuestionGenerator.ts
@@ -1,5 +1,5 @@
-import { BaseLLMPredictor } from "./LLMPredictor";
-import { SimplePrompt } from "./Prompt";
+import { BaseLLMPredictor, ChatGPTLLMPredictor } from "./LLMPredictor";
+import { SimplePrompt, defaultSubQuestionPrompt } from "./Prompt";
 import { ToolMetadata } from "./Tool";
 
 export interface BaseQuestionGenerator {
@@ -11,8 +11,8 @@ export class LLMQuestionGenerator implements BaseQuestionGenerator {
   prompt: SimplePrompt;
 
   constructor(init?: Partial<LLMQuestionGenerator>) {
-    this.llmPredictor = init?.llmPredictor ?? new BaseLLMPredictor();
-    this.prompt = init?.prompt ?? new SimplePrompt();
+    this.llmPredictor = init?.llmPredictor ?? new ChatGPTLLMPredictor();
+    this.prompt = init?.prompt ?? defaultSubQuestionPrompt;
   }
 
   async agenerate(