enricoros / big-AGI

Generative AI suite powered by state-of-the-art models and providing advanced AI/AGI functions. It features AI personas, AGI functions, multi-model chats, text-to-image, voice, response streaming, code highlighting and execution, PDF import, presets for developers, much more. Deploy on-prem or in the cloud.
https://big-agi.com
MIT License
5.24k stars 1.19k forks source link

Backend-driven Models/Configuration settings #119

Open ArticExploit opened 1 year ago

ArticExploit commented 1 year ago

Since a lot of people are going to self-host this for themselves, it would be nice having a way, through: docker-compose, a config file or directly through the web-gui, to define global settings that apply to every new user connection. So that self-hosted users won't have to rely on cookies and won't have to setup things how they like every time they use it from a different browser. On the same note it would be nice to have a way to toggle off the "first time user" popup.

enricoros commented 1 year ago

👋 thanks for tracking this here as well. Looking forward for inspiration for a good config file. What are the best settings used by self-hosted installations? is ENV configuration cool, or shall we have a structured file, and how would the build system load it?

ArticExploit commented 1 year ago

I think both the ENV file solution or something like a yaml or json file would be nice. That said the ENV file would be slightly better as it's already in use for the APIs.

kalinon commented 1 year ago

I agree. I am encountering an issue where the ENVs are set, but it still pops up the form to configure. Reading a yaml/json file for config would be a great alternative option.

enricoros commented 10 months ago

To keep this task up to speed - we added backend-side runtime capabilities reporting.

This is what changed:

The first effect is that docker containers don't need to be built with env vars set, and instead can just be run in any machine.

In the future, this frameworks lays the foundation for backend-driver client personalization. Full server-side model configuration is not there yet, as it's hard to support 7 client-side configured vendors and at the same time backend-configured vendors.