-
Notifications
You must be signed in to change notification settings - Fork 230
LocalAGI port in Go #14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
feat: integrate LocalRAG
Signed-off-by: mudler <mudler@localai.io>
Signed-off-by: Richard Palethorpe <io@richiejp.com>
Signed-off-by: Richard Palethorpe <io@richiejp.com>
Action, connector, MCP, dynamic prompts and anything else that is stored as an array in the config; their fields are always stored as string by the backend. Signed-off-by: Richard Palethorpe <io@richiejp.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copilot reviewed 207 out of 221 changed files in this pull request and generated 1 comment.
Files not reviewed (14)
- .dockerignore: Language not supported
- .env: Language not supported
- .github/workflows/image.yaml: Language not supported
- Dockerfile: Language not supported
- Dockerfile.realtimesst: Language not supported
- Dockerfile.webui: Language not supported
- LICENSE: Language not supported
- Makefile: Language not supported
- config/wizardlm-13b-1.1.yaml: Language not supported
- config/wizardlm-13b-superhot.yaml: Language not supported
- config/wizardlm-13b.yaml: Language not supported
- config/wizardlm-30b-superhot-supercot.yaml: Language not supported
- config/wizardlm-30b.yaml: Language not supported
- config/wizardlm-7b.yaml: Language not supported
Comments suppressed due to low confidence (2)
core/action/custom.go:49
- The type assertion for the 'Init' function may panic if the evaluated value does not match the expected signature. Consider using a comma-ok check to safely handle incorrect types.
run := v.Interface().(func() error)
.github/workflows/image.yml:22
- [nitpick] There might be a typo in the Docker image name 'localagi'; check if it should be 'localagent' in order to match the project naming.
DOCKER_IMAGE=quay.io/mudler/localagi
| run := v.Interface().(func(map[string]interface{}) (string, map[string]interface{}, error)) | ||
|
|
Copilot
AI
Apr 8, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The type assertion for the 'Run' function could lead to a panic if the evaluated function does not have the expected signature. Using a safe type assertion (with comma-ok) would improve the robustness of the code.
| run := v.Interface().(func(map[string]interface{}) (string, map[string]interface{}, error)) | |
| run, ok := v.Interface().(func(map[string]interface{}) (string, map[string]interface{}, error)) | |
| if !ok { | |
| return types.ActionResult{}, fmt.Errorf("invalid function signature for Run") | |
| } |
Signed-off-by: mudler <mudler@localai.io>
Signed-off-by: mudler <mudler@localai.io>
Signed-off-by: mudler <mudler@localai.io>
Signed-off-by: Richard Palethorpe <io@richiejp.com>
This is a complete rewrite of LocalAGI in go, with an additional WebUI to manage, create, connect a swarm of agents.
There are many new capabilities added, and the language was moved away from Python. The rewriting started almost 2 years ago, so it took time to complete because was mainly working on it during my spare time. However now @richiejp is jumping in helping in, and we also have a fantastic web interface (thanks!) so things looks solid to release and swap with the old core.
There are minor things to tweak along the way, but this should be a good baseline from now on.
The goal of the project is unchanged: be able to host Agents on your own hardware, with less configuration as possible, with sane defaults. There are two flavors (CPU and GPU) that can be both tweaked easily from the docker-compose files.