Giter Site home page Giter Site logo

enhanced-llm-reasoning-tree-of-thoughts's People

Contributors

sockcymbal avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

enhanced-llm-reasoning-tree-of-thoughts's Issues

ToT does not work that way, obtaining the different thoughts from a single prompt

Your prompt is:

Imagine you are 3 `hypotheticalExperts` with world-class skills across `desiredDomains`.
Brainstorm your initial thoughts on the following question. Remember to consider all relevant facts and principles,
draw on your specialized knowledge and from the accumulated wisdom of pioneers in the field.
The question is: `question`

This is not effective for ToT. Each thought must be from a single output of a AI (claude, gpt-3.5, bing, gpt-4 etc.). Then you feed each thought back in another prompt to generate other paths.

What I do is the following:

Prompt 1

To offer a solution to the given problem: "insert original problem description here", please provide a comprehensive and methodical first step. This should be presented in full sentences and include any relevant calculations or processes involved in achieving the first step. If it's feasible, generate examples that are akin to 'Declare a variable named [variable name]' or 'Craft a function that accepts [input parameters] and yields [output].' Use guiding phrases such as 'Commence by', 'Initiate with', 'Formulate', 'Proclaim', 'Compose', 'Institute', or 'Delineate' to steer the output. Avoid ambiguous phrases such as 'the subsequent move' or 'resolve the issue', and instead provide detailed, precise instructions. It's imperative that your response retains the original essence of the problem. Please make sure that the initial step is explicit, unambiguous, and doesn't cause any misunderstandings when attempting to solve the problem. Do not generate code.

Prompt 1.1

Given the problem at hand: "insert original problem description here", your task is to devise a systematic and unique first step divergent from the initially proposed steps, summarized here: "insert initial steps summary". This initial step should be outlined in complete sentences and should encompass any relevant calculations or procedures necessary for its execution. If practical, create examples similar to 'Declare a variable named [variable name]' or 'Formulate a function that accepts [input parameters] and yields [output].' To guide the output, employ phrases such as 'Commence by', 'Initiate with', 'Formulate', 'Proclaim', 'Compose', 'Institute', or 'Delineate'. Refrain from using vague phrases such as 'the subsequent move' or 'resolve the issue', and instead provide detailed, explicit instructions. This is crucial to avoid any misunderstandings when attempting to solve the problem. Ensure that your response retains the original essence of the problem and that the first step is clear, precise, and unequivocal. Do not generate code.

Prompt 1.2

Given the problem described below:

"insert original problem description here"

The purpose of this task is to perform a critical analysis of the thoughts and steps that have been proposed so far, as summarized here:

"insert initial steps summary"

You are required to scrutinize each step meticulously, with the goal of identifying any potential errors, inconsistencies, or gaps in the reasoning. It's important to be vigilant for any oversights that might have been made in the preliminary thought process.

Your analysis should be comprehensive, clear, and concise. The format should include an introductory paragraph, a body with clear identification of issues in the initial steps, and a conclusion summarizing your findings.

For example, your output should look something like this:

"Introduction
The problem at hand, as described (problem description), involves... The initially proposed steps include...

Body
Upon my analysis, the first inconsistency/error/gap I identified is... This is problematic because... Another oversight in the proposed steps is...

Conclusion
In conclusion, after a careful review of the initial steps and reasoning provided, several issues were identified including..."

Remember, the goal is to provide a thoughtful critique of the original steps with the aim of improving the reasoning and problem-solving process. Do not generate code.

Prompt 2

For the problem at hand: "insert original problem description here", we have made an initial stride towards its resolution by developing a partial solution: "partial solution summary". Your task is to conceive a methodical and comprehensive next step that builds on this partial solution. Your response should be laid out in clear, complete sentences and must incorporate any relevant calculations or processes pivotal in achieving the next step. If possible, provide examples similar to 'Start by declaring a variable named [variable name]' or 'Formulate a function that takes in [input parameters] and returns [output].' Use guiding phrases such as 'Commence by', 'Initiate with', 'Proclaim', 'Compose', 'Institute', or 'Delineate' to direct the output. Avoid vague phrases such as 'the subsequent move' or 'resolve the issue'. Instead, your instructions should be detailed, precise, and free from any ambiguity. It is crucial that your response remains faithful to the original problem's essence, ensuring that the next step is explicit, clear-cut, and does not lead to misinterpretations when applied to the problem-solving process. Do not generate code.

Prompt 2.1

Given the issue at hand: "[Please detail the original problem you're facing here]", we have initiated our journey towards its resolution by creating a partial solution: "[Briefly summarize the partial solution that has been developed]". Based on this partial solution, your task is to conceive a systematic and all-encompassing next step that is distinct from the previously suggested steps: "[Please summarize the next steps that have already been proposed]".

Your response should be laid out in clear, complete sentences. It should include any necessary calculations or processes that are pivotal in achieving the next step. Examples of this could be 'Begin your process by declaring a variable named [variable name]' or 'Create a function that takes in [input parameters] and returns [output].'

To guide your output, please use directive phrases such as 'Commence by', 'Initiate with', 'Proclaim', 'Compose', 'Institute', or 'Delineate'. Please avoid vague phrases like 'the subsequent move' or 'resolve the issue'. Your instructions should be detailed, accurate, and free from any ambiguity.

It is crucial that your response remains faithful to the original problem's essence, ensuring that the next step is explicit, clear-cut, and does not lead to misinterpretations when applied to the problem-solving process. Do not generate code.

Prompt 2.2

In response to the problem described as "insert original problem description here", your task is to perform a critical analysis of the proposed solutions and future steps, which are summarized as "insert next steps summary". Your analysis should focus on identifying any potential errors, inconsistencies, or gaps in the reasoning provided. Be particularly attentive to any oversights or overlooked details.

Your response should be detailed, well-structured, and clear. It should include specific examples where necessary to illustrate your points. The goal is not just to identify issues but also to provide constructive feedback and, if possible, suggest improvements.

For instance, if you find an inconsistency in the reasoning, explain why it's inconsistent and propose a way to make it more consistent. If you identify a gap, describe what's missing and suggest how it could be filled.

Remember, the objective is to improve the quality of the thoughts given, so your feedback should be constructive and solution-oriented. Do not generate code.

Prompt 3

Reflect on the process without generating code. Discuss what you have learned, identify key takeaways, and suggest how you might approach similar problems in the future. Consider the interactions and emergent properties throughout all stages of the reasoning process, the system's self-regulation and adaptation, your ability to explore new lines of thinking and synthesize all the insights, and the overall effectiveness of the process. Based on your reflections, what would you do differently in future iterations of the process?

===

For each state I generate a thought from a different AI (claude, bing, gpt-3.5, gpt-4. bard). It works also generating different thoughts from the same model but at different temperatures, like gpt-4 temp=0.3, gpt-4 temp=0.7, gpt-4 temp=1.0

And I like to evaluate myself, comparing the thoughts two at a time.

What do you think?

Great repository by the way

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.