Commit Graph

238 Commits

Author SHA1 Message Date
Tim Farrell
8298cefd62 Fix bash condition formatting 2024-02-02 09:02:48 -06:00
Tim Farrell
1031638d82 Maintain backward compatibility with WEBUI_JWT_SECRET_KEY for the time being 2024-02-02 09:02:35 -06:00
Tim Farrell
e2d481d99a Move the random secret generation to start.sh.
This way the random secret is created on first run instead of docker build. We don't really want all standard imaages to share a password anymore than we want a static password.
2024-02-02 09:02:23 -06:00
Tim Farrell
44799e2018 Remove some extraneous imports 2024-02-02 09:02:07 -06:00
Tim Farrell
4fceb404bd Call jwt.decode with the expected algorithms 2024-02-02 09:01:57 -06:00
Tim Farrell
e15dbdc46a Pass the instance we're using. 2024-02-02 09:01:34 -06:00
Tim Farrell
8c37edd027 Even though "User.email" is enforced as unique at signup, it is not a unique field in the database. Let's use "User.id" instead. This also makes it more difficult to do a session stealing attack. 2024-02-02 09:01:06 -06:00
Tim Farrell
2c1dacb9b6 We should verify signatures to make the whole session secret meaningful. 2024-02-02 09:00:31 -06:00
Tim Farrell
03a7e35967 Default docker installations should generate a random key instead of using a static secret that everyone can see. 2024-02-02 08:59:46 -06:00
Tim Farrell
d67f3d982b Start by renaming variables to something more generic. This will give us a bit more flexibility as we look to other session management mechanisms. 2024-02-02 08:58:13 -06:00
Self Denial
6c1e69cac2 Disable Chroma telemetry 2024-02-01 17:29:09 -07:00
Timothy J. Baek
50f7b20ac2 refac 2024-02-01 13:35:41 -08:00
Timothy J. Baek
28226a6f97 feat: web rag support 2024-01-26 22:17:28 -08:00
Timothy J. Baek
0c322063b5 feat: use local profile image by default 2024-01-26 21:38:33 -08:00
Timothy J. Baek
3ce8f3e8fb feat: profile update frontend integration 2024-01-26 21:22:25 -08:00
Timothy J. Baek
418da74756 feat: profile image update backend 2024-01-26 20:27:45 -08:00
Timothy Jaeryang Baek
d6b139cfe9
Merge pull request #559 from peperunas/patch-2
fix: use exec the uvicorn process to handle Docker's SIGTERM correctly
2024-01-25 00:47:45 -08:00
Timothy Jaeryang Baek
a243e53bfe
Merge pull request #536 from lucasew/backend-data-dir
Unhardcode some stuff, flexibilize dotenv requirement
2024-01-25 00:42:12 -08:00
Timothy J. Baek
326af5a648 refac 2024-01-25 00:40:19 -08:00
Timothy J. Baek
4e468dc58c refac 2024-01-25 00:24:49 -08:00
Timothy Jaeryang Baek
fa5918ad13
Merge branch 'main' into main 2024-01-25 00:13:12 -08:00
Giulio De Pasquale
1cbbfc7c66
fix: use exec the uvicorn process to handle Docker's SIGTERM correctly
Replace the shell with the uvicorn process, so it becomes PID 1 and receives the signals directly
2024-01-24 17:57:35 +00:00
Marclass
8bfda730d9 add excel document support 2024-01-23 14:03:22 -07:00
lucasew
8da06f5e74 fixes after the refactor
Signed-off-by: lucasew <lucas59356@gmail.com>
2024-01-23 12:59:52 -03:00
Timothy Jaeryang Baek
ca943d0795
Merge pull request #549 from Marclass/main
Bugfix: Fix toast error popup when front end can't figure out file type.
2024-01-22 23:13:53 -08:00
Timothy Jaeryang Baek
7054f02891
Merge pull request #466 from baumandm/feat/epub-support
feat: Add epub support
2024-01-22 23:12:46 -08:00
Marclass
7eea3ef313 copy list of file ext from backend to front end 2024-01-23 00:00:07 -07:00
Timothy Jaeryang Baek
d517a3ebb4
Merge pull request #547 from Marclass/main
feat: Add reStructuredText specific parser for RAG
2024-01-22 22:19:41 -08:00
Timothy J. Baek
c4a039326f feat: editable prompt suggestions integration 2024-01-22 21:53:13 -08:00
Timothy J. Baek
4e1b52e91b feat: custom interface support 2024-01-22 21:07:40 -08:00
Marclass
2e4373c63e
Merge branch 'ollama-webui:main' into main 2024-01-22 21:01:33 -07:00
Timothy J. Baek
d67c632920 fix: openai 2024-01-22 09:45:56 -08:00
Timothy J. Baek
d2c5f3d591 refac: convert str var to f-string 2024-01-22 01:47:07 -08:00
Timothy Jaeryang Baek
1abe5a5487
Merge pull request #537 from CreatorGhost/fix-gpt-4-vision
Add max_tokens workaround for gpt-4-vision-preview model
2024-01-22 01:41:57 -08:00
Timothy J. Baek
83181b7968 fix: add max_token only when field not present 2024-01-22 01:41:00 -08:00
Timothy J. Baek
b26e0fb7e7 refac 2024-01-22 01:37:54 -08:00
Shiyinq
6a63c94153 feat: add guard clause to improve signup process 2024-01-20 21:54:53 +07:00
Aditya Pratap Singh
60afd6ecdd Add workaround for gpt-4-vision-preview model that support 4k tokens 2024-01-20 04:34:47 +05:30
Aditya Pratap Singh
8662437a9f Add workaround for gpt-4-vision-preview model 2024-01-20 04:17:06 +05:30
lucasew
5b26d2a686 backend: make the data directory and the artifacts from the frontend customizable using environment variables
Signed-off-by: lucasew <lucas59356@gmail.com>
2024-01-19 17:13:09 -03:00
lucasew
e3503d6617 backend: make dotenv optional
Signed-off-by: lucasew <lucas59356@gmail.com>
2024-01-19 17:12:14 -03:00
Marclass
35ace57784 add rst document for RAG 2024-01-19 10:48:04 -07:00
Dave Bauman
f559068186
feat: Add epub support 2024-01-19 12:23:59 -05:00
Timothy Jaeryang Baek
f079cb6b56
Merge pull request #524 from Marclass/rag-arbitrary-files
feat: Allow RAG on XML and arbitrary text files including source code
2024-01-19 00:09:04 -08:00
Marclass
aa1d386042 Allow any file to be used for RAG.
Changed RAG parser to prefer file extensions over MIME content types. If the type of file is not recognized assume it's a text file.
2024-01-18 20:41:14 -07:00
Timothy J. Baek
220530c450 feat: convo tag filtering 2024-01-18 02:55:25 -08:00
Timothy J. Baek
1eec176313 feat: save tags to chat data 2024-01-18 02:17:31 -08:00
Timothy J. Baek
987685dbf9 feat: convo tagging full integration 2024-01-18 02:10:07 -08:00
Timothy J. Baek
d5ed119687 feat: convo tagging api added 2024-01-18 01:04:24 -08:00
Timothy J. Baek
077f1fa34b feat: convo tagging backend support 2024-01-18 00:58:45 -08:00
Timothy J. Baek
442e3d978a feat: terminate request on user stop 2024-01-17 19:19:44 -08:00
Marclass
6070e6bcd1 add svelte type to RAG 2024-01-17 20:10:34 -07:00
Marclass
8dacc86ab0
Merge branch 'ollama-webui:main' into main 2024-01-17 16:20:52 -07:00
Timothy Jaeryang Baek
89b35e4556
Merge pull request #504 from mslinn/fix1
This script can now be run from any directory
2024-01-17 15:00:24 -08:00
Timothy J. Baek
b6ab357e8c fix: more edge cases 2024-01-17 14:47:56 -08:00
Mike Slinn
f9885a15e4 Can now run from any directory 2024-01-17 17:30:58 -05:00
Marclass
cf6b3fa48a remove html type and add js/css 2024-01-17 00:34:22 -07:00
Marclass
43d8466677 feat: Add RAG support for various programming languages
Enables RAG for golang, python, java, sh, bat, powershell, cmd, js, css, c/c++/c#, sql, logs, ini, perl, r, dart, docker, env, php, haskell, lua, conf, plsql, ruby, db2, scalla, bash, swift, vue, html, xml, and other arbitrary text files.
2024-01-17 00:09:47 -07:00
Timothy J. Baek
0e039492c6 refac: SERVER_PORT renamed to PORT 2024-01-12 19:38:30 -08:00
Anuraag Jain
a63507c21e feat: custom port for server 2024-01-11 21:54:14 +02:00
goecho
74f91bc74d Fix bug: Header attributes (Host, Authorization, Origin, Referer) not sanitized
- Resolved an issue where header attributes Host, Authorization, Origin, and Referer were not being sanitized, resulting in two major issues:
  1. Ollama requests inadvertently exposed user information, leading to data leakage.
  2. When Ollama is deployed on different servers, and the intermediary proxy layer uses the host header to locate downstream services, it fails to find them.

Root Cause:
- In FastAPI, when accessing request.headers, all header names are converted to lowercase. This is because FastAPI, and its underlying framework Starlette, adhere to the HTTP/2 standard, which mandates lowercase header field names for performance and consistency.
- In HTTP/2, enforcing lowercase header field names reduces complexity in header processing as case sensitivity is no longer a concern. Thus, regardless of the case used in client-sent header fields, the server processes them uniformly in lowercase.
- This practice is adopted in FastAPI and other modern HTTP frameworks, even in an HTTP/1.1 context, to maintain consistency with HTTP/2 and improve overall performance. As a result, header field names are always presented in lowercase in FastAPI, even if the original request used capitalization or mixed case.
2024-01-11 14:36:34 +08:00
Timothy J. Baek
ffba59dc3a Update requirements.txt 2024-01-09 21:09:28 -08:00
Timothy J. Baek
c1ec604f21 feat: rag md support 2024-01-09 15:24:53 -08:00
Timothy J. Baek
76d37393ee feat: gguf upload 2024-01-09 13:25:42 -08:00
Timothy J. Baek
1ff3eb8038 feat: doc upload error handling 2024-01-08 01:54:03 -08:00
Timothy J. Baek
eddb6fc7b7 feat: documents backend integration 2024-01-08 01:49:20 -08:00
Timothy J. Baek
54c4e0761a feat: documents file upload 2024-01-08 01:26:15 -08:00
Timothy J. Baek
cc3f84f916 feat: # to import doc 2024-01-07 23:43:32 -08:00
Timothy J. Baek
2603ac30bc feat: documents 2024-01-07 22:14:08 -08:00
Timothy J. Baek
02f364bfd9 fix: dockerfile 2024-01-07 21:22:37 -08:00
Timothy J. Baek
706a8d4f8d fix 2024-01-07 21:14:20 -08:00
Timothy J. Baek
162641ee43 Update requirements.txt 2024-01-07 19:54:52 -08:00
Timothy J. Baek
57c050326c feat: docx support 2024-01-07 13:56:01 -08:00
Timothy J. Baek
9a63376e55 feat: file upload error handling 2024-01-07 09:33:34 -08:00
Timothy J. Baek
b37b157638 feat: reset vectordb storage support 2024-01-07 09:15:45 -08:00
Timothy J. Baek
d4b2578f6e feat: rag csv support 2024-01-07 09:05:52 -08:00
Timothy J. Baek
d6a1bf1406 refac: file upload 2024-01-07 09:00:30 -08:00
Timothy J. Baek
ffd0a5a2a0 Update main.py 2024-01-07 08:34:05 -08:00
Timothy J. Baek
c68bb3b950 docker: slim 2024-01-07 08:28:35 -08:00
Timothy Jaeryang Baek
34e0f64fb3
Merge pull request #333 from ollama-webui/rag
feat: RAG support
2024-01-07 02:50:32 -08:00
Timothy J. Baek
464d0fb016 fix: update langchain.document_loaders 2024-01-07 02:49:13 -08:00
Timothy J. Baek
04db2475f9 fix: disable swagger doc in prod 2024-01-07 02:48:21 -08:00
Timothy J. Baek
70d2571be1 feat: rag backend auth 2024-01-07 02:46:12 -08:00
Timothy J. Baek
c43df8850f fix: requirements 2024-01-07 02:45:56 -08:00
Timothy J. Baek
142269374f feat: vectordb query error handling 2024-01-07 01:59:00 -08:00
Timothy J. Baek
ad3d69be30 refac 2024-01-07 01:54:58 -08:00
Timothy J. Baek
9634e2da3e feat: full integration 2024-01-07 01:40:36 -08:00
Timothy J. Baek
fef4725d56 feat: frontend file upload support 2024-01-07 00:57:10 -08:00
Timothy J. Baek
cd86c36953 feat: pdf data load 2024-01-06 23:40:51 -08:00
Timothy J. Baek
784b369cc9 feat: chromadb vector store api 2024-01-06 22:59:22 -08:00
Timothy J. Baek
b2c9f6dff8 feat: rag api endpoint 2024-01-06 22:07:20 -08:00
Timothy J. Baek
82114c45ee fix: allow command named create 2024-01-06 17:55:41 -08:00
Timothy Jaeryang Baek
7071716f54
Merge pull request #408 from ollama-webui/main
rag
2024-01-06 17:33:52 -08:00
Timothy J. Baek
73b88a8c17 fix: update user email issue 2024-01-06 02:51:57 -08:00
Timothy J. Baek
e441875af7 fix: update role 2024-01-05 21:02:49 -08:00
Timothy J. Baek
fb0c64379d feat: edit user support 2024-01-05 20:59:56 -08:00
Timothy J. Baek
bb2971260d fix: backend proxy 2024-01-05 17:16:35 -08:00
Timothy J. Baek
78477baa0e feat: proxy logging 2024-01-05 15:51:33 -08:00
Timothy J. Baek
5e6d946f83 chore: disable passlib log 2024-01-05 12:22:27 -08:00
Timothy J. Baek
a37b9c126f refac 2024-01-05 01:29:04 -08:00