-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
refactor(application): introduce application global state (#2072)
* start breaking up the giant channel refactor now that it's better understood - easier to merge bites Signed-off-by: Dave Lee <[email protected]> * add concurrency and base64 back in, along with new base64 tests. Signed-off-by: Dave Lee <[email protected]> * Automatic rename of whisper.go's Result to TranscriptResult Signed-off-by: Dave Lee <[email protected]> * remove pkg/concurrency - significant changes coming in split 2 Signed-off-by: Dave Lee <[email protected]> * fix comments Signed-off-by: Dave Lee <[email protected]> * add list_model service as another low-risk service to get it out of the way Signed-off-by: Dave Lee <[email protected]> * split backend config loader into seperate file from the actual config struct. No changes yet, just reduce cognative load with smaller files of logical blocks Signed-off-by: Dave Lee <[email protected]> * rename state.go ==> application.go Signed-off-by: Dave Lee <[email protected]> * fix lost import? Signed-off-by: Dave Lee <[email protected]> --------- Signed-off-by: Dave Lee <[email protected]>
- Loading branch information
1 parent
147440b
commit c4f958e
Showing
22 changed files
with
590 additions
and
422 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
package core | ||
|
||
import ( | ||
"github.com/go-skynet/LocalAI/core/config" | ||
"github.com/go-skynet/LocalAI/core/services" | ||
"github.com/go-skynet/LocalAI/pkg/model" | ||
) | ||
|
||
// The purpose of this structure is to hold pointers to all initialized services, to make plumbing easy | ||
// Perhaps a proper DI system is worth it in the future, but for now keep things simple. | ||
type Application struct { | ||
|
||
// Application-Level Config | ||
ApplicationConfig *config.ApplicationConfig | ||
// ApplicationState *ApplicationState | ||
|
||
// Core Low-Level Services | ||
BackendConfigLoader *config.BackendConfigLoader | ||
ModelLoader *model.ModelLoader | ||
|
||
// Backend Services | ||
// EmbeddingsBackendService *backend.EmbeddingsBackendService | ||
// ImageGenerationBackendService *backend.ImageGenerationBackendService | ||
// LLMBackendService *backend.LLMBackendService | ||
// TranscriptionBackendService *backend.TranscriptionBackendService | ||
// TextToSpeechBackendService *backend.TextToSpeechBackendService | ||
|
||
// LocalAI System Services | ||
BackendMonitorService *services.BackendMonitorService | ||
GalleryService *services.GalleryService | ||
ListModelsService *services.ListModelsService | ||
LocalAIMetricsService *services.LocalAIMetricsService | ||
// OpenAIService *services.OpenAIService | ||
} | ||
|
||
// TODO [NEXT PR?]: Break up ApplicationConfig. | ||
// Migrate over stuff that is not set via config at all - especially runtime stuff | ||
type ApplicationState struct { | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.