LAION-AI / Open-Assistant

OpenAssistant is a chat-based assistant that understands tasks, can interact with third-party systems, and retrieve information dynamically to do so.
https://open-assistant.io
Apache License 2.0
36.94k stars 3.22k forks source link

Integrate AutoGPT #3045

Closed mediafill closed 1 year ago

mediafill commented 1 year ago

Would love if you integrate chatgpt for multiple stage tasks and chrome access, or build a similar engine.

olliestanley commented 1 year ago

This will need more detail to become a real task

kyr0 commented 1 year ago

+1 :) -- I guess AutoGPT could simply be forked and a compatibility layer for OA could be implemented, making the ApiManager here more abstract with providers:

and the AI model providers having a type attribute that maps which AI provider they belong to:

Here, the code hard-wires OpenAI for the impl. It could become more of an abstract impl. where a config parameter decides which provider to choose. The current impl. should probably to become the default provider, then we can impl. an OA provider. Here, the API endpoint needs to be configurable, so that it could either point to a local endpoint or a Huggingface one. Because the configuration is specific to each AI provider, this also needs to be changed in autogpt.config to be more abstract and support config per AI provider. Maybe a new config attribute and deprecate the existing ones. But chould be backward compatible to have all the tests green.

As all the surrounding code in AutoGPT should be more or less independent of the AI that runs behind the scenes, the api_manager should hopefully be the primary target for impl.

laurentperez commented 1 year ago

I'd downvote this (👎 ?). The whole point of OA vision https://github.com/LAION-AI/Open-Assistant#slide-decks is to offer Apache licenced code and training data CC BY 4.0.

AutoGPT builds upon the for-profit OpenAI GPT-4 API where Microsoft has exclusive access to the code, and has no publics plans to reveal their model weights nor open source them.

@kyr0 's comment is good. OA could be a provider, thru an impl of thru AutoGPT plugins. But is the vision compatible ? ;)

kyr0 commented 1 year ago

@laurentperez Thank you for your feedback! I def. agree that OpenAI is nowhere near the direction this community would probably like to go. The whole point is that the model and ecosystem is finally open source! :) However AutoGPT implemented OpenAI as a "functionality provider", probably because of the lack of a better open source alternative, but AutoGPT itself is open source and their community seems to have an open source vision as far as I can see. I cannot speak for them but I'd wonder if they wouldn't dislike the closed source nature of OpenAI. Bildschirmfoto 2023-05-07 um 13 13 37

I was coming from a point of efficiency. When AutoGPT already builds a great ecosystem for the Auto/AGI ideas, with plugins etc. to fulfill these goals: Why not consolidate the community effort? MIT and Apache licenses would be compatible. On the other hand - thinking philosophical/critical in all directions: Why not empower the momentum here and implement ReAct/MRKL features and an ecosystem for that here? But I don't know how much these features fit the vision of this project as I haven't seen that point in the slide decks?

btw: Great slide decks - both of them!

mediafill commented 1 year ago

AutoGPT accepts other models or could be edited to use Laama? As I see it (IMHO), if you don't offer what AutoGPT is (task - > multi-task, execution, result, the project will become irrelevant rather quickly.

kyr0 commented 1 year ago

A few days more into researching the topic I conclude for myself: Just use https://langchain.readthedocs.io/ and let the OA focus on what it is best at: Making a LLM model of great quality -> also see: https://www.youtube.com/watch?v=2xxziIWmaSA ;; and as langchain does support HuggingFace, I guess chances are, that you can build your open source AI solution based on that - and much more flexible than you could do by customizing AutoGPT right now and trying to fit the data and logic to be compatible with OA.