c8dd8e5ef4
fix: reduce chmod permissions for created files and directories ( #2137 )
...
quiet more security scanner issues: pass one of chmod restriction to remove group and other permissions
Signed-off-by: Dave Lee <dave@gray101.com >
2024-04-26 00:47:06 +02:00
d98063e80e
fix: api key polling was not using correct filepath ( #2132 )
...
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
2024-04-25 20:06:22 +00:00
b664edde29
feat(rerankers): Add new backend, support jina rerankers API ( #2121 )
...
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-25 00:19:02 +02:00
4fffc47e77
deps(llama.cpp): update, use better model for function call tests ( #2119 )
...
deps(llama.cpp): update
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-24 18:44:04 +02:00
ac56ac2b2d
fix(gallery): show a fake image if no there is no icon ( #2111 )
...
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-23 20:10:58 +02:00
a09fe1b9ba
fix(gallery): set margin for images
...
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-23 20:00:20 +02:00
d344daf129
feat(models-ui): minor visual enhancements ( #2109 )
...
Show image if present, URL, tags, and better display buttons
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-23 18:43:25 +02:00
3411e072ca
Fix cleanup sonarqube findings ( #2106 )
...
* fix: update dockerignore and gitignore to exclude sonarqube work dir
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* fix: remove useless equality check
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* fix: use sonarqube Dockerfile recommendations
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
---------
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
2024-04-23 18:43:00 +02:00
0d8bf91699
feat: Galleries UI ( #2104 )
...
* WIP: add models to webui
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
* Register routes
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
* fix: don't cache models
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
* small fixups
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
* fix: fixup multiple installs (strings.Clone)
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
---------
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-23 09:22:58 +02:00
220958a87c
fix: typo in models.go ( #2099 )
2024-04-22 04:34:59 +00:00
f3f6535aad
fix: rename fiber entrypoint from http/api to http/app ( #2096 )
...
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
Co-authored-by: Dave <dave@gray101.com >
2024-04-21 22:39:28 +02:00
180cd4ccda
fix(llama.cpp-ggml): fixup max_tokens
for old backend ( #2094 )
...
fix(llama.cpp-ggml): set 0 as default for `max_tokens`
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-21 16:34:00 +02:00
284ad026b1
refactor(routes): split routes registration ( #2077 )
...
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-21 01:19:57 +02:00
afa1bca1e3
fix(llama.cpp): set -1 as default for max tokens ( #2087 )
...
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-20 20:20:10 +02:00
03adc1f60d
Add tensor_parallel_size setting to vllm setting items ( #2085 )
...
Signed-off-by: Taikono-Himazin <kazu@po.harenet.ne.jp >
2024-04-20 14:37:02 +00:00
b319ed58b0
models(gallery): add gallery ( #2078 )
...
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-20 15:22:54 +02:00
8d30b39811
feat: fiber logs with zerlog and add trace level ( #2082 )
...
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
2024-04-20 10:43:37 +02:00
b9e7708643
feat: enable polling configs for systems with broken fsnotify (docker volumes on windows) ( #2081 )
...
* feat: enable polling configs for systems with broken fsnotify (docker volumes on windows)
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* fix: update logging to make it clear that the config file is being polled
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
---------
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
2024-04-19 19:31:15 -05:00
bbea62b907
feat(functions): support models with no grammar, add tests ( #2068 )
...
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-18 22:43:12 +02:00
502c1eedaa
feat: refactor the dynamic json configs for api_keys and external_backends ( #2055 )
...
* feat: refactor the dynamic json configs for api_keys and external_backends
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* fix: remove commented code
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
---------
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
Signed-off-by: Ettore Di Giacinto <mudler@users.noreply.github.com >
Co-authored-by: Ettore Di Giacinto <mudler@users.noreply.github.com >
2024-04-18 03:21:55 +00:00
af9e5a2d05
Revert #1963 ( #2056 )
...
* Revert "fix(fncall): fix regression introduced in #1963 (#2048 )"
This reverts commit 6b06d4e0af
.
* Revert "fix: action-tmate back to upstream, dead code removal (#2038 )"
This reverts commit fdec8a9d00
.
* Revert "feat(grpc): return consumed token count and update response accordingly (#2035 )"
This reverts commit e843d7df0e
.
* Revert "refactor: backend/service split, channel-based llm flow (#1963 )"
This reverts commit eed5706994
.
* feat(grpc): return consumed token count and update response accordingly
Fixes : #1920
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
---------
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-17 23:33:49 +02:00
6b06d4e0af
fix(fncall): fix regression introduced in #1963 ( #2048 )
...
Signed-off-by: Dave <dave@gray101.com >
---------
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
Signed-off-by: Dave <dave@gray101.com >
Co-authored-by: Dave <dave@gray101.com >
2024-04-16 21:20:11 +00:00
33c78d2228
feat(store): add Golang client ( #1977 )
...
This adds a basic store client for Go
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-16 15:54:14 +02:00
fdec8a9d00
fix: action-tmate back to upstream, dead code removal ( #2038 )
...
cleanup: upstream action-tmate has taken my PR, drop master reference. Also remove dead code from api.go
Signed-off-by: Dave Lee <dave@gray101.com >
2024-04-16 01:46:36 +00:00
538a086309
fix: previous CLI rework broke debug logging ( #2036 )
...
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
Co-authored-by: Dave <dave@gray101.com >
2024-04-15 22:13:59 +02:00
e843d7df0e
feat(grpc): return consumed token count and update response accordingly ( #2035 )
...
Fixes : #1920
2024-04-15 19:47:11 +02:00
eed5706994
refactor: backend/service split, channel-based llm flow ( #1963 )
...
Refactor: channel based llm flow and services split
---------
Signed-off-by: Dave Lee <dave@gray101.com >
2024-04-13 09:45:34 +02:00
b2785ff06e
feat(gallery): support ConfigURLs ( #2012 )
...
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-12 00:49:23 +02:00
12c0d9443e
feat: use tokenizer.apply_chat_template() in vLLM ( #1990 )
...
Use tokenizer.apply_chat_template() in vLLM
Signed-off-by: Ludovic LEROUX <ludovic@inpher.io >
2024-04-11 19:20:22 +02:00
24d7dadfed
feat: kong cli refactor fixes #1955 ( #1974 )
...
* feat: migrate to alecthomas/kong for CLI
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* feat: bring in new flag for granular log levels
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* chore: go mod tidy
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* feat: allow loading cli flag values from ["./localai.yaml", "~/.config/localai.yaml", "/etc/localai.yaml"] in that order
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* feat: load from .env file instead of a yaml file
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* feat: better loading for environment files
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* feat(doc): add initial documentation about configuration
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* fix: remove test log lines
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* feat: integrate new documentation into existing pages
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* feat: add documentation on .env files
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* fix: cleanup some documentation table errors
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
* feat: refactor CLI logic out to it's own package under core/cli
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
---------
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
2024-04-11 09:19:24 +02:00
8342553214
fix(llama.cpp): set better defaults for llama.cpp ( #1961 )
...
fix(defaults): set better defaults for llama.cpp
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-06 22:56:45 +02:00
b85dad0286
feat: first pass at improving logging ( #1956 )
...
Signed-off-by: Chris Jowett <421501+cryptk@users.noreply.github.com >
2024-04-04 09:24:22 +02:00
ff77d3bc22
fix(seed): generate random seed per-request if -1 is set ( #1952 )
...
* fix(seed): generate random seed per-request if -1 is set
Also update ci with new workflows and allow the aio tests to run with an
api key
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
* docs(openvino): Add OpenVINO example
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
---------
Signed-off-by: Ettore Di Giacinto <mudler@localai.io >
2024-04-03 22:25:47 +02:00
9bc209ba73
fix(welcome): stable model list ( #1949 )
2024-04-02 19:25:32 +02:00
e8f02c083f
fix(functions): respect when selected from string ( #1940 )
...
* fix(functions): respect when selected from string
* fix(toolschoice): decode both string and objects
2024-04-01 19:39:54 +02:00
35290e146b
fix(grammar): respect JSONmode and grammar from user input ( #1935 )
...
* fix(grammar): Fix JSON mode and custom grammar
* tests(aio): add jsonmode test
* tests(aio): add functioncall test
* fix(aio): use hermes-2-pro-mistral as llm for CPU profile
* add phi-2-orange
2024-03-31 13:04:09 +02:00
957f428fd5
fix(tools): correctly render tools response in templates ( #1932 )
...
* fix(tools): allow to correctly display both Functions and Tools
* models(hermes-2-pro): correctly display function results
2024-03-30 19:02:07 +01:00
61e5e6bc36
fix(swagger): do not specify a host ( #1930 )
...
In this way the requests are redirected to the host used by the client
to perform the request.
2024-03-30 12:04:41 +01:00
123a5a2e16
feat(swagger): Add swagger API doc ( #1926 )
...
* makefile(build): add minimal and api build target
* feat(swagger): Add swagger
2024-03-29 22:29:33 +01:00
bf65ed6eb8
feat(webui): add partials, show backends associated to models ( #1922 )
...
* feat(webui): add partials, show backends associated to models
* fix(auth): put assistant and backend under auth
2024-03-28 21:52:52 +01:00
66ee4afb95
feat(welcome): add simple welcome page ( #1912 )
...
* feat(welcome): add simple welcome page
* feat(api): add 404 handling
2024-03-27 21:10:58 +01:00
2d7913b3be
feat(assistant): Assistant and AssistantFiles api ( #1803 )
...
* Initial implementation of assistants api
* Move load/save configs to utils
* Save assistant and assistantfiles config to disk.
* Add tsets for assistant api
* Fix models path spelling mistake.
* Remove personal go.mod information
---------
Co-authored-by: Ettore Di Giacinto <mudler@users.noreply.github.com >
2024-03-26 18:54:35 +01:00
643d85d2cc
feat(stores): Vector store backend ( #1795 )
...
Add simple vector store backend
Signed-off-by: Richard Palethorpe <io@richiejp.com >
2024-03-22 21:14:04 +01:00
600152df23
fix(config): pass by config options, respect defaults ( #1878 )
...
This bug had the unpleasant effect that it ignored defaults passed by
the CLI. For instance threads could be changed only via model config
file.
2024-03-22 20:55:11 +01:00
e533dcf506
feat(functions/aio): all-in-one images, function template enhancements ( #1862 )
...
* feat(startup): allow to specify models from local files
* feat(aio): add Dockerfile, make targets, aio profiles
* feat(template): add Function and LastMessage
* add hermes2-pro-mistral
* update hermes2 definition
* feat(template): add sprig
* feat(template): expose FunctionCall
* feat(aio): switch llm for text
2024-03-21 01:12:20 +01:00
ed5734ae25
test/fix: OSX Test Repair ( #1843 )
...
* test with gguf instead of ggml. Updates testPrompt to match? Adds debugging line to Dockerfile that I've found helpful recently.
* fix testPrompt slightly
* Sad Experiment: Test GH runner without metal?
* break apart CGO_LDFLAGS
* switch runner
* upstream llama.cpp disables Metal on Github CI!
* missed a dir from clean-tests
* CGO_LDFLAGS
* tmate failure + NO_ACCELERATE
* whisper.cpp has a metal fix
* do the exact opposite of the name of this branch, but keep it around for unrelated fixes?
* add back newlines
* add tmate to linux for testing
* update fixtures
* timeout for tmate
2024-03-18 19:19:43 +01:00
843f93e1ab
fix(config): default to debug=false if not set ( #1853 )
2024-03-18 18:59:39 +01:00
801b481beb
fixes #1051 : handle openai presence and request penalty parameters ( #1817 )
...
* fix request debugging, disable marshalling of context fields
Signed-off-by: blob42 <contact@blob42.xyz >
* merge frequency_penalty request parm with config
Signed-off-by: blob42 <contact@blob42.xyz >
* openai: add presence_penalty parameter
Signed-off-by: blob42 <contact@blob42.xyz >
---------
Signed-off-by: blob42 <contact@blob42.xyz >
2024-03-17 09:43:20 +01:00
89351f1a7d
feat(embeddings): do not require to be configured ( #1842 )
...
Certain engines requires to know during model loading
if the embedding feature has to be enabled, however, it is impractical
to have to set it to ALL the backends that supports embeddings.
There are transformers and sentencentransformers that seamelessly handle
both cases, without having this settings to be explicitly enabled.
The case sussist only for ggml-based models that needs to enable
featuresets during model loading (and thus settings `embedding` is
required), however most of the other engines does not require this.
This change disables the check done at code side, making easier to use
embeddings by not having to specify explicitly `embeddings: true`.
Part of: https://github.com/mudler/LocalAI/issues/1373
2024-03-15 18:14:23 +01:00
20136ca8b7
feat(tts): add Elevenlabs and OpenAI TTS compatibility layer ( #1834 )
...
* feat(elevenlabs): map elevenlabs API support to TTS
This allows elevenlabs Clients to work automatically with LocalAI by
supporting the elevenlabs API.
The elevenlabs server endpoint is implemented such as it is wired to the
TTS endpoints.
Fixes: https://github.com/mudler/LocalAI/issues/1809
* feat(openai/tts): compat layer with openai tts
Fixes : #1276
* fix: adapt tts CLI
2024-03-14 23:08:34 +01:00