Skip to content

feat: O1 support in goose for new models#47

Closed
michaelneale wants to merge 6 commits intomainfrom
o1-reasoning
Closed

feat: O1 support in goose for new models#47
michaelneale wants to merge 6 commits intomainfrom
o1-reasoning

Conversation

@michaelneale
Copy link
Collaborator

@michaelneale michaelneale commented Sep 13, 2024

This adds in the new o1 openai model in a ensemble pattern that can supplement the processor/gpt-4o type tool calling model, especially useful when writing or checking code (when tool calls are required it will not interfere).

A non ensemble approach: https://github.com/square/exchange/tree/tool_emulation_experiment (but limited success by asking it to do tool calling - worked for a little bit, but not reliable enough in that form).

To try this:

check out this branch and goose together (and add this project as a dependency as described in the CONTRIBUTING.md doc in goose):

OPENAI_REASONING=o1-mini uv run goose session start

or

OPENAI_REASONING=o1-preview uv run goose session start

This will tell it to use the o1 models when needed to enhance the work done by the main openai models which do the tool calling. Requires you have openai provider with access to o1 via API

Some possible future direction:

  • Extract into a separate provider
  • add a "reasoner" config alongside "processor" in profile.yaml which can include these models
  • add reasoner to toolkits so it can be used with ask_an_ai exchange
  • have a (supplemental) toolkit which can be invoked as needed for stronger deeper reasoning (as per initial o1 preview suggestions) - it can detect that the process is struggling or user needs more thought before continuing and intervene.
  • have the "reasoner" used in this code as well as toolkit.
  • unclear if tool calling will become part of o1 suite of models so may not need to be as separate as this longer term (but could be if via toolkit)

@michaelneale michaelneale changed the title feat: O1 reasoning feat: O1 support in goose for new models Sep 13, 2024
@michaelneale
Copy link
Collaborator Author

trying an alternative approach here: block/goose#68

@baxen
Copy link
Collaborator

baxen commented Sep 19, 2024

+1 on the alternative approaches higher up in goose - i think that'll be more consistent with exchange providing generic message completions and goose having more complex tools

@baxen baxen closed this Sep 19, 2024
codefromthecrypt pushed a commit to codefromthecrypt/exchange that referenced this pull request Oct 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

Comments