Commit Graph

721 Commits

Author SHA1 Message Date
Antoine Dewez
e7ce2fa54b
feat(frontend): show remaining credits (#2495)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-27 04:44:48 -07:00
Stan Girard
e7b5699818
feat(docker): Update Dockerfile to install Supabase CLI (#2505)
This pull request updates the Dockerfile to include the installation of
the Supabase CLI. The Supabase CLI is required for interacting with the
Supabase backend. This update ensures that the Supabase CLI is installed
in the Docker image, allowing developers to easily use the Supabase CLI
within their Docker environment.
2024-04-27 04:42:24 -07:00
Stan Girard
b7ff2e77af
feat(citations): system added (#2498)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-26 08:11:01 -07:00
Damien Mourot
85c4835c59
fix(backend): compute history only if needed and put some cache to remove some call… (#2497)
… to the DB API

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-25 15:18:12 -07:00
Stan Girard
2a25f442e5
feat: Add telemetry ping task to celery worker and main.py (#2494)
This pull request adds a new telemetry ping task to the celery worker
and main.py files. The ping task sends a ping message to the telemetry
system.
2024-04-25 07:22:13 -07:00
Stan Girard
0239d5d19c feat(porter): Add Porter.yaml files for backend and frontend services 2024-04-25 10:51:10 +02:00
Stan Girard
47491bc967
feat: Update chunk overlap to 200 (#2488)
This pull request updates the chunk overlap value in the File class from
300 to 200. This change reduces the overlap between chunks, improving
the performance of chunking operations.
2024-04-24 14:15:31 -07:00
Stan Girard
5c5e022990
feat(history): max tokens in the history provided (#2487)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-24 14:09:55 -07:00
Stan Girard
f656dbcb42
feat(reranker): Add flashrank and contextual compression retriever (#2480)
This pull request adds the flashrank and contextual compression
retriever to the codebase. The flashrank reranker model is used for
compression, and the contextual compression retriever combines the base
compressor and base retriever to improve document retrieval.
2024-04-24 10:44:31 -07:00
Stan Girard
0fd99fe5b2
feat(docs): update to new (#2465)
This pull request updates the API documentation to include new sections
on configuring Quivr and contacting the Quivr team. It also removes the
"API Brains" section from the documentation.
2024-04-22 08:34:11 -07:00
Stan Girard
fbddb70f81
fix(sources): Remove duplicate sources and add metadata to model response (#2462)
This pull request fixes the issue of duplicate sources in the model
response and adds metadata to the response. It removes duplicate sources
with the same name and creates a list of unique sources. Additionally,
it includes the generated URLs and sources in the metadata of the model
response.
2024-04-21 14:50:44 -07:00
Stan Girard
1f48043bb9
fix(gpt4): Refactor GPT4Brain and KnowledgeBrainQA classes to add non-streaming-saving-answer (#2460)
This pull request refactors the GPT4Brain and KnowledgeBrainQA classes
to add the functionality of saving non-streaming answers. It includes
changes to the `generate_answer` method and the addition of the
`save_non_streaming_answer` method. This enhancement improves the
overall functionality and performance of the code.
2024-04-21 04:09:52 -07:00
Stan Girard
e426ecd178
feat(gpt4): Add chat service and generate answer method to GPT4Brain class (#2459)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-21 03:42:03 -07:00
Thoonsen Maxime
5c965b6d22
refactor: reorg the files #2 (#2457)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-20 02:28:20 -07:00
Thoonsen Maxime
43a20ebefe
refactor: Refacto code #1 (#2458)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-20 02:22:05 -07:00
Stan Girard
ec37400691
Revert "refactor: reorg files in backend" (#2456)
Reverts QuivrHQ/quivr#2449
2024-04-20 01:42:35 -07:00
Thoonsen Maxime
dc6bd53519
refactor: reorg files in backend (#2449)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):


<!--
ELLIPSIS_HIDDEN
-->
----

| 🚀 This description was created by
[Ellipsis](https://www.ellipsis.dev) for commit
997576d577 |
|--------|

### Summary:
This PR involves a significant refactoring of the codebase, with file
and class relocations and renames, and updated import paths, without
introducing new functionality.

**Key points**:
- Significant refactoring of the codebase for improved organization and
clarity.
- File and class relocations and renames.
- Updated import paths to reflect new locations and names.
- No new functionality introduced.


----
Generated with ❤️ by [ellipsis.dev](https://www.ellipsis.dev)

<!--
ELLIPSIS_HIDDEN
-->
2024-04-19 22:25:03 -10:00
Stan Girard
9301cee76d
fix: Fix error message in SummaryAssistant class (#2453)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-19 03:02:59 -07:00
Stan Girard
0761738082 feat: Fix error message for missing files key in input 2024-04-19 12:01:53 +02:00
Stan Girard
5d92b98bcb Update output description in summary_inputs function 2024-04-19 11:54:38 +02:00
Antoine Dewez
803f304390
feat(frontend): Quivr Assistants (#2448)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):


<!--
ELLIPSIS_HIDDEN
-->
----

| 🚀 This description was created by
[Ellipsis](https://www.ellipsis.dev) for commit
3e95f1a5aa |
|--------|

### Summary:
This PR introduces the 'Quivr Assistants' feature with new frontend
components and pages, backend routes and DTOs changes, and a minor
update in the `processAssistant` function.

**Key points**:
- Introduced the 'Quivr Assistants' feature with new frontend components
and pages, backend routes and DTOs changes.
- Added new `AssistantModal` component in
`/frontend/app/assistants/AssistantModal/AssistantModal.tsx`.
- Added new `InputsStep` and `OutputsStep` components for handling
assistant inputs and outputs.
- Added new `AssistantModal` page in
`/frontend/app/assistants/page.tsx`.
- Added new API endpoints and types for assistants in
`/frontend/lib/api/assistants/assistants.ts` and
`/frontend/lib/api/assistants/types.ts`.
- Updated backend assistant routes and DTOs in
`backend/modules/assistant/controller/assistant_routes.py`,
`backend/modules/assistant/dto/inputs.py`,
`backend/modules/assistant/ito/difference.py`, and
`backend/modules/assistant/ito/summary.py`.
- Made a minor update in the `processAssistant` function in the
`/frontend/lib/api/assistants/assistants.ts` file.


----
Generated with ❤️ by [ellipsis.dev](https://www.ellipsis.dev)

<!--
ELLIPSIS_HIDDEN
-->
2024-04-19 01:36:36 -07:00
Stan Girard
c3e0c2f2ee
feat(summary): improve prompt to get more insights (#2446)
This pull request includes a commit that improves the prompt used to get
more insights from the document. The commit modifies the map and reduce
templates to provide clearer instructions for analyzing each section of
the document and generating a consolidated summary. The changes also
include adjustments to the text splitter to improve the chunk overlap.

<!--
ELLIPSIS_HIDDEN
-->


----

| 🚀 This description was created by
[Ellipsis](https://www.ellipsis.dev) for commit
adf5541dab |
|--------|

### Summary:
This PR enhances the document analysis and summary generation
instructions in the `SummaryAssistant` class and improves text splitting
by adjusting the `chunk_overlap` parameter.

**Key points**:
- Updated `map_template` and `reduce_template` in `process_assistant`
method of `SummaryAssistant` class in
`/backend/modules/assistant/ito/summary.py`.
- Adjusted `chunk_overlap` parameter of `CharacterTextSplitter` instance
from 0 to 100.


----
Generated with ❤️ by [ellipsis.dev](https://www.ellipsis.dev)



<!--
ELLIPSIS_HIDDEN
-->
2024-04-18 14:04:06 -07:00
Stan Girard
3e53ff0dce
fix(assistants): brain id is null (#2445)
This pull request fixes an issue where the brain activation and value
handling were not working correctly. The `BrainInput` model now allows
for optional activation and value fields, and an empty string is
converted to `None` using a root validator. This ensures that brain
activation and value can be properly handled in the application.

<!--
ELLIPSIS_HIDDEN
-->


----

| 🚀 This description was created by
[Ellipsis](https://www.ellipsis.dev) for commit
d63ed6e651 |
|--------|

### Summary:
This PR modifies the `BrainInput` class in
`/backend/modules/assistant/dto/inputs.py` to make `activated` and
`value` fields optional and adds a root validator to convert empty
strings to `None`.

**Key points**:
- Modified `BrainInput` class in
`/backend/modules/assistant/dto/inputs.py`
- Made `activated` and `value` fields optional with default values
- Added root validator `empty_string_to_none` to convert empty strings
to `None`


----
Generated with ❤️ by [ellipsis.dev](https://www.ellipsis.dev)



<!--
ELLIPSIS_HIDDEN
-->
2024-04-18 14:03:47 -07:00
Stan Girard
1e6ff8fce0
feat(rag): Refactor DEFAULT_DOCUMENT_PROMPT in quivr_rag.py (#2442)
This pull request refactors the DEFAULT_DOCUMENT_PROMPT in quivr_rag.py
to improve code readability and maintainability. The unnecessary file
name information has been removed from the prompt template as it is now
included in the vector embedding

<!--
ELLIPSIS_HIDDEN
-->


----

| <a href="https://ellipsis.dev" target="_blank"><img
src="https://avatars.githubusercontent.com/u/80834858?s=400&u=31e596315b0d8f7465b3ee670f25cea677299c96&v=4"
alt="Ellipsis" width="30px" height="30px"/></a> | 🚀 This PR
description was created by [Ellipsis](https://www.ellipsis.dev) for
commit 81939457e6. |
|--------|--------|

### Summary:
This PR refactors the `DEFAULT_DOCUMENT_PROMPT` in `quivr_rag.py` by
removing the file name information from the prompt template, enhancing
code readability and maintainability.

**Key points**:
- Refactored `DEFAULT_DOCUMENT_PROMPT` in `quivr_rag.py`.
- Removed file name information from the prompt template.
- File name information is now included in the vector embedding.


----
Generated with ❤️ by [ellipsis.dev](https://www.ellipsis.dev)



<!--
ELLIPSIS_HIDDEN
-->
2024-04-17 15:26:24 -07:00
Stan Girard
309666f3fd
feat: Update Docker build commands and dependencies (#2441)
This pull request updates the Docker build commands and dependencies.
2024-04-17 14:37:32 -07:00
Stan Girard
311d9bb15c
feat(assistant): check if key of file is same as filename uploaded (#2439)
This pull request fixes the file key validation in the `check_input`
method. Previously, the method only checked if a file was uploaded and
if the key of the file was "doc_to_summarize". However, it did not check
if the key of the file was the same as the name of the file. This PR
adds a check to ensure that the key of the file is the same as the name
of the file. This improves the accuracy of the file validation process.

<!--
ELLIPSIS_HIDDEN
-->


----

| <a href="https://ellipsis.dev" target="_blank"><img
src="https://avatars.githubusercontent.com/u/80834858?s=400&u=31e596315b0d8f7465b3ee670f25cea677299c96&v=4"
alt="Ellipsis" width="30px" height="30px"/></a> | 🚀 This PR
description was created by [Ellipsis](https://www.ellipsis.dev) for
commit 8f04d832ac. |
|--------|--------|

### Summary:
This PR enhances the file validation process in the `SummaryAssistant`
class by ensuring the key of the uploaded file matches its filename.

**Key points**:
- Added a new file key validation in `check_input` method of
`SummaryAssistant` class.
- The validation checks if the key of the uploaded file matches the
filename.
- This is an additional check to the existing file upload and key
validations.


----
Generated with ❤️ by [ellipsis.dev](https://www.ellipsis.dev)



<!--
ELLIPSIS_HIDDEN
-->
2024-04-17 13:27:15 -07:00
Stan Girard
1bd7e81b3d
fix(assistant): summary now can output 2000 tokens (#2440)
This pull request increases the token limit for the summary output to
2000 in order to accommodate larger documents.

<!--
ELLIPSIS_HIDDEN
-->


----

| <a href="https://ellipsis.dev" target="_blank"><img
src="https://avatars.githubusercontent.com/u/80834858?s=400&u=31e596315b0d8f7465b3ee670f25cea677299c96&v=4"
alt="Ellipsis" width="30px" height="30px"/></a> | 🚀 This PR
description was created by [Ellipsis](https://www.ellipsis.dev) for
commit 4412ecde83. |
|--------|--------|

### Summary:
This PR increases the token limit for the summary output to 2000 in the
`SummaryAssistant` class to accommodate larger documents.

**Key points**:
- Increased `max_tokens` parameter in `ChatLiteLLM` instance to 2000 in
`process_assistant` function of `SummaryAssistant` class in
`/backend/modules/assistant/ito/summary.py` file.


----
Generated with ❤️ by [ellipsis.dev](https://www.ellipsis.dev)



<!--
ELLIPSIS_HIDDEN
-->
2024-04-17 08:34:04 -07:00
Stan Girard
3400b8633f
feat(analytics): rely on sql rather that python loop for brains (#2437)
This pull request refactors the get_brains_usages method in the
Analytics class. The changes include improving code readability,
optimizing database queries, and fixing potential bugs.

<!--
ELLIPSIS_HIDDEN
-->


----

| <a href="https://ellipsis.dev" target="_blank"><img
src="https://avatars.githubusercontent.com/u/80834858?s=400&u=31e596315b0d8f7465b3ee670f25cea677299c96&v=4"
alt="Ellipsis" width="30px" height="30px"/></a> | 🚀 This PR
description was created by [Ellipsis](https://www.ellipsis.dev) for
commit f0ad664673. |
|--------|--------|

### Summary:
This PR optimizes the `get_brains_usages` method in the `Analytics`
class by reducing database calls and improving code readability.

**Key points**:
- Refactored `get_brains_usages` method in `Analytics` class.
- Optimized database query to fetch chat history in one go.
- Improved code readability and formatting.


----
Generated with ❤️ by [ellipsis.dev](https://www.ellipsis.dev)



<!--
ELLIPSIS_HIDDEN
-->
2024-04-17 07:24:03 -07:00
Stan Girard
b62297341f
feat(assistants): Add PDF generation functionality and nice emails (#2436)
This pull request adds PDF generation functionality and improves the
formatting of emails. It includes a new module for generating PDFs using
the fpdf2 library and updates the email templates to use markdown
formatting for better readability.

<!--
ELLIPSIS_HIDDEN
-->
----

| <a href="https://ellipsis.dev" target="_blank"><img
src="https://avatars.githubusercontent.com/u/80834858?s=400&u=31e596315b0d8f7465b3ee670f25cea677299c96&v=4"
alt="Ellipsis" width="30px" height="30px"/></a> | 🚀 This PR
description was created by [Ellipsis](https://www.ellipsis.dev) for
commit ccecff77a5. |
|--------|--------|

### Summary:
This PR introduces PDF generation functionality, improves email
formatting, sanitizes filenames, updates various files and dependencies,
and updates `docker-compose.dev.yml`.

**Key points**:
- Added PDF generation functionality using the `fpdf2` library
- Improved email formatting
- Sanitized filenames using the `unidecode` library
- Updated `backend/modules/assistant/ito/ito.py` to generate PDFs and
sanitize filenames
- Added `pdf_generator.py` in `backend/modules/assistant/ito/utils/` for
PDF generation
- Updated `Pipfile` and `Pipfile.lock` in
`backend/modules/assistant/ito/utils/` to include `unidecode`
- Updated `requirements.txt` with new dependencies
- Updated `docker-compose.dev.yml`


----
Generated with ❤️ by [ellipsis.dev](https://www.ellipsis.dev)

<!--
ELLIPSIS_HIDDEN
-->
2024-04-17 06:00:31 -07:00
Stan Girard
ed814de1c6
feat(assistant): improve prompt summary (#2435)
This pull request improves the prompt summary in the assistant code. It
updates the map_template and reduce_template to provide clearer
instructions for identifying main themes, key points, and important
information in each section of a document. The reduce_template also
specifies that the final summary should include the main themes, key
points, and important information of the entire document.

<!--
ELLIPSIS_HIDDEN
-->


----

| <a href="https://ellipsis.dev" target="_blank"><img
src="https://avatars.githubusercontent.com/u/80834858?s=400&u=31e596315b0d8f7465b3ee670f25cea677299c96&v=4"
alt="Ellipsis" width="30px" height="30px"/></a> | 🚀 This PR
description was created by [Ellipsis](https://www.ellipsis.dev) for
commit 456736a41d. |
|--------|--------|

### Summary:
This PR enhances the document summarization process in the
`SummaryAssistant` class by providing clearer instructions for
identifying main themes, key points, and important information in each
section of a document.

**Key points**:
- Updated `map_template` and `reduce_template` in `process_assistant`
function of `SummaryAssistant` class.
- Changes provide clearer instructions for summarizing documents.
- Final summary should include main themes, key points, and important
information of the entire document.


----
Generated with ❤️ by [ellipsis.dev](https://www.ellipsis.dev)



<!--
ELLIPSIS_HIDDEN
-->
2024-04-16 14:03:36 -07:00
Stan Girard
1931848262
feat(assistants): Add user usage update and pricing calculation to ITO assistant (#2433)
This pull request adds functionality to update user usage and calculate
pricing in the ITO assistant. It includes a new method
`increase_usage_user()` that raises an error if the user has consumed
all of their credits, and a new method `calculate_pricing()` that
returns a fixed pricing value of 20.

<!--
ELLIPSIS_HIDDEN
-->
----

| <a href="https://ellipsis.dev" target="_blank"><img
src="https://avatars.githubusercontent.com/u/80834858?s=400&u=31e596315b0d8f7465b3ee670f25cea677299c96&v=4"
alt="Ellipsis" width="30px" height="30px"/></a> | 🚀 This PR
description was created by [Ellipsis](https://www.ellipsis.dev) for
commit ee5fdf70f6. |
|--------|--------|

### Summary:
This PR adds functionality to update user usage and calculate pricing in
the ITO assistant, with new methods in the `ITO` class and an update to
where the `increase_usage_user()` method is called.

**Key points**:
- Added `increase_usage_user()` and `calculate_pricing()` methods to
`ITO` class in `/backend/modules/assistant/ito/ito.py`
- `increase_usage_user()` updates user usage and raises an error if all
credits are consumed
- `calculate_pricing()` returns a fixed pricing value of 20
- `increase_usage_user()` is now called in the `ITO` class constructor


----
Generated with ❤️ by [ellipsis.dev](https://www.ellipsis.dev)

<!--
ELLIPSIS_HIDDEN
-->
2024-04-16 09:14:38 -07:00
Stan Girard
c92ccb5543
feat(assistants): Add new input models for boolean, number, select text, and select number (#2432)
This pull request adds new input models for boolean, number, select
text, and select number. These models will allow for more flexible and
dynamic input options in the software. The changes include the addition
of the `InputBoolean`, `InputNumber`, `InputSelectText`, and
`InputSelectNumber` classes to the `Inputs` model. These classes provide
properties for key, required, description, and additional options
specific to each input type. This enhancement will improve the overall
functionality and user experience of the software.

<!--
ELLIPSIS_HIDDEN
-->


----

| <a href="https://ellipsis.dev" target="_blank"><img
src="https://avatars.githubusercontent.com/u/80834858?s=400&u=31e596315b0d8f7465b3ee670f25cea677299c96&v=4"
alt="Ellipsis" width="30px" height="30px"/></a> | 🚀 This PR
description was created by [Ellipsis](https://www.ellipsis.dev) for
commit 6fa583b6a8. |
|--------|--------|

### Summary:
This PR enhances the `Inputs` model by adding new input models for
boolean, number, select text, and select number, improving the
software's functionality and user experience.

**Key points**:
- Added `InputBoolean`, `InputNumber`, `InputSelectText`, and
`InputSelectNumber` classes to `Inputs` model in `inputs.py` and
`outputs.py`.
- Each new class provides properties for key, required, description, and
additional options specific to each input type.


----
Generated with ❤️ by [ellipsis.dev](https://www.ellipsis.dev)



<!--
ELLIPSIS_HIDDEN
-->
2024-04-16 00:29:37 -07:00
Stan Girard
861931f231 tests: added new way of testing less prone to errors 2024-04-15 18:22:21 +02:00
Stan Girard
38589d32cf
feat(backend): add RAG evaluation using Ragas (#2429)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):


<!--
ELLIPSIS_HIDDEN
-->


----

| <a href="https://ellipsis.dev" target="_blank"><img
src="https://avatars.githubusercontent.com/u/80834858?s=400&u=31e596315b0d8f7465b3ee670f25cea677299c96&v=4"
alt="Ellipsis" width="30px" height="30px"/></a> | 🚀 This PR
description was created by [Ellipsis](https://www.ellipsis.dev) for
commit 5350e0a071. |
|--------|--------|

### Summary:
This PR adds a new script for evaluating the RAG model using the Ragas
library, with results saved as a JSON file and printed to the console.

**Key points**:
- New script `run_evaluation.py` added to
`backend/tests/ragas_evaluation/`.
- The script processes documents, generates replies using a QuivrRAG
chain, and evaluates the replies using specified metrics.
- Results are saved as a JSON file and printed to the console.
- The script can be run from the command line with various options.


----
Generated with ❤️ by [ellipsis.dev](https://www.ellipsis.dev)



<!--
ELLIPSIS_HIDDEN
-->

---------

Co-authored-by: Damien Mourot <damien.mourot@gmail.com>
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2024-04-15 06:53:48 -07:00
Stan Girard
c773677b46
feat: llamaparse & diff agent (#2427)
This pull request updates the dependencies in the Pipfile to their
latest versions.
2024-04-12 09:06:50 -07:00
Stan Girard
a8c5e186be
feat: Add icon and description to assistant (#2426)
This pull request adds an icon and description to the assistant. The
icon is displayed in the user interface and the description provides
additional information about the assistant.
2024-04-11 13:35:35 -07:00
Stan Girard
9db8b63bb9
feat: Add tags to AssistantOutput classes (#2425)
This pull request adds a new optional field "tags" to the
AssistantOutput classes. The "tags" field allows for categorizing the
outputs and can be used for filtering or organizing purposes.
2024-04-11 09:42:01 -07:00
Stan Girard
488949d408
feat: assistants (#2421)
…dio_transcript and crawler assistants

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-11 09:31:16 -07:00
Stan Girard
1ffeb8f25d
feat: Add assistant module and remove ingestion module (#2420)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-10 04:28:22 -07:00
Stan Girard
82e0dd9342
feat: optimization calls (#2417)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-10 02:45:16 -07:00
Antoine Dewez
8d3bc79a7e
feat(analytics): added analytics page (#2416)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-10 02:20:21 -07:00
Antoine Dewez
7ff9abee1a
feat(frontend): onboarding V2 (#2394)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):

---------

Co-authored-by: Stan Girard <girard.stanislas@gmail.com>
2024-04-09 18:06:33 +02:00
Stan Girard
6acf5fca5f
fix: Add integration brain to subscription route (#2410)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-06 19:34:46 -07:00
Stan Girard
68db4e0361
fix: logger level and telemetry function calls (#2409)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-04-06 18:35:57 -07:00
Nicholas Coles
8d4980cf78
Feat: Bibtex file uploads (#2398)
# Description

Added ability to upload .bib files to brain using langchain bibtex
document loader. Also changed frontend to allow the choosing of said
file.

Looking for guidance on how to run unit tests locally!

## Checklist before requesting a review

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [x] I have commented hard-to-understand areas
- [x] I have ideally added tests that prove my fix is effective or that
my feature works
- [x] New and existing unit tests pass locally with my changes
- [x] Any dependent changes have been merged
2024-04-02 10:51:16 -07:00
Stan Girard
5d4f5e4496
feat: Add url_required field to IngestionEntity (#2400)
This pull request adds a new field, `url_required`, to the
`IngestionEntity` class. This field is required for the ingestion
process and will be used to store the URL of the entity.
2024-04-01 18:57:11 -07:00
Stan Girard
a95e311712
feat(ingestion): Add ingestion module and routes (#2393)
This pull request adds the ingestion module and routes to the project.
It includes the necessary files and code changes to implement the
ingestion functionality.
2024-04-01 18:40:56 -07:00
Antoine Dewez
0c0545b7ae
fix(backend): invitation brain bugs (#2380)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-03-25 16:13:51 -07:00
Antoine Dewez
d273426c01
fix(backend): invitation with new brains did not work (#2378)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-03-25 14:10:52 -07:00
Antoine Dewez
4aeb00fd47
feat(frontend): onboarding form (#2342)
# Description

TODO BEFORE RELEASE
- [ ] Onboarded true for all existing users

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):

---------

Co-authored-by: Stan Girard <girard.stanislas@gmail.com>
2024-03-21 12:10:54 -07:00
Antoine Dewez
1381a0729e
fix(frontend & backend): unsubscribe from brain (#2373)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-03-21 11:51:10 -07:00
Antoine Dewez
da8e7513e6
feat(frontend & backend): thumbs for message feedback (#2360)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):

---------

Co-authored-by: Stan Girard <girard.stanislas@gmail.com>
2024-03-21 00:11:06 -07:00
Damien Mourot
d42323d34a
feat(docker image): Docker image Optimized for CPU-only env (#2368)
# Description

Optimize the docker image for cpu-only environment. (PyTorch in cpu
mode, cuda not installed etc) This should reduce the backend docker
image size by ~2

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-03-20 23:38:07 -07:00
Stan Girard
719c9971f7
feat: mistral (#2365)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-03-19 16:56:45 -07:00
Stan Girard
1a52ec38d4
feat: Add optional fields to UserIdentity and UserUpdatableProperties (#2341)
This pull request adds optional fields to the UserIdentity and
UserUpdatableProperties classes in order to allow for more flexibility
when updating user properties. The new fields include username, company,
and onboarded. Additionally, the database schema has been updated to
reflect these changes.
2024-03-12 19:47:45 -07:00
Stan Girard
6754829d8b
chore: update packages backend (#2339)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-03-11 19:23:39 -07:00
Stan Girard
4e42882f41
feat: Update langchain.prompts and langchain_core.messages modules (#2326)
This pull request updates the langchain.prompts and
langchain_core.messages modules. It includes changes to the code that
improve functionality and fix any existing issues.
2024-03-08 16:30:10 -08:00
Antoine Dewez
8b4206c0e3
fix(frontend): brain name (#2311)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-03-06 12:55:36 -08:00
Antoine Dewez
4efa346a66
feat(frontend): brain Catalogue (#2303)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-03-06 11:17:46 -08:00
Stan Girard
29e762612c
feat: Update to newest version of litellm (#2307)
This pull request includes a feature update to the newest version of
litellm. This update brings in the latest enhancements and bug fixes to
improve the functionality and performance of the software.
2024-03-06 11:03:47 -08:00
Niels Garve
6d024bc16d
fix(rag): add api_base (#2289)
# Description

With this pull request, I add a fix that **enables Ollama**. 

Running quivr in a Docker container, Ollama needs to be accessed via
http://host.docker.internal:11434.

This URL is defined as `api_base` of the `ChatLiteLLM` constructor. But
there are calls that are missing `api_base`. This leads to fallback URLs
being used. This is now fixed.

Fixes #2270 #2267 #2217 #2204 

## Checklist before requesting a review

Please delete options that are not relevant.

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [x] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [x] New and existing unit tests pass locally with my changes
- [x] Any dependent changes have been merged

## Screenshots (if appropriate):

None

Co-authored-by: Niels Garve <niels.garve@experienceone.com>
2024-03-04 23:48:23 -08:00
Stan Girard
edcabdbcdf
feat: doc as integration (#2297)
This pull request updates the integration types and classes in the
codebase. It includes the following commits:

- Update logo_url field in brain entity and integration_brain entity

- Update integration references in BrainsUsers and IntegrationBrain
classes

- Revert "Update integration references in BrainsUsers and
IntegrationBrain classes"

- Revert "Update logo_url field in brain entity and integration_brain
entity"

- Add 'doc' integration type and KnowledgeBrainQA class

Please review and merge these changes.
2024-03-04 16:10:56 -08:00
Stan Girard
ecc8eb6366
feat: Update chunk_size in File model (#2281)
This pull request updates the chunk_size in the File model from 500 to
250. This change will improve the performance and efficiency of the
code.
2024-03-01 15:07:57 -08:00
Stan Girard
aeaa16dc5f
feat(notion): added custom integration (#2268)
This pull request adds a custom integration feature and sync
functionality to the application. It includes the following changes:

- Added a new integration entity for custom integrations.

- Implemented the ability to load and poll the custom integration.

- Added a task to sync the custom integration with the user's brain.

- Updated the celery beat schedule to include the new task.

Please review and merge this pull request.
2024-02-27 21:30:25 -08:00
Stan Girard
3a2e0e7336
feat: new landing page (#2264)
This pull request updates the origins in cors.py, origin in
resend_invitation_email.py, and referring_site in
add-new-email/index.ts. It also refactors the code in home/page.tsx and
next.config.js.
2024-02-25 18:09:01 -08:00
Stan Girard
166b823d25
feat(sentry): remove health endpoint (#2257)
This pull request removes the healthz endpoint from the Sentry
integration. The `before_send` function has been updated to drop
transaction events that contain 'healthz' in the transaction name. This
change ensures that healthz transactions are not sent to Sentry.
2024-02-23 19:32:32 -08:00
Stan Girard
e4f920120f
Add max_input and max_tokens parameters to KnowledgeBrainQA constructor (#2247)
This pull request adds the `max_input` and `max_tokens` parameters to
the `KnowledgeBrainQA` constructor. These parameters allow for setting
the maximum input length and maximum number of tokens for the
KnowledgeBrainQA model. This provides more flexibility and control over
the input size and tokenization process.
2024-02-22 15:38:25 -08:00
Stan Girard
81072b3841
Revert "feat(chat): Add follow up questions functionality" (#2246)
Reverts QuivrHQ/quivr#2241
2024-02-22 15:35:39 -08:00
Stan Girard
44312dc617
Reduce sampling rate for Sentry traces (#2245)
This pull request reduces the sampling rate for Sentry traces to 0.1.
This change ensures that only a small percentage of traces are captured,
which helps to reduce the impact on performance and storage.
2024-02-22 14:48:45 -08:00
Stan Girard
5f862e7c31
feat(chat): Add follow up questions functionality (#2241)
This pull request adds the ability to ask follow up questions in the
chat. It also includes various code improvements and bug fixes.
2024-02-22 13:02:29 -08:00
Stan Girard
73d5e7b808
fix: get_brain_details API to include user_id parameter (#2242)
This pull request fixes the `get_brain_details` API by adding a
`user_id` parameter. Previously, the API did not include the `user_id`
parameter, which caused issues when retrieving brain details. This fix
ensures that the `user_id` is passed correctly to the API, allowing for
accurate retrieval of brain details.
2024-02-22 12:48:34 -08:00
Stan Girard
f5fb444bc8 fix: Update Celery config to remove SSL certificate requirement 2024-02-20 19:56:14 -08:00
Stan Girard
19c11944bc
feat: implement elasticache (#2234)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-20 19:52:14 -08:00
Stan Girard
3c2d83b22f
feat: Update dependencies and remove unnecessary logging statements (#2232)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-20 16:59:58 -08:00
Antoine Dewez
b09878f332
feat(frontend): first custom brain live (#2226)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-20 15:11:03 -08:00
Stan Girard
7212e62859
feat: Add max_files attribute to MinimalUserBrainEntity and BrainsUsers repository (#2229)
This pull request adds a new attribute, max_files, to the
MinimalUserBrainEntity class in the BrainsUsers repository. The
max_files attribute represents the maximum number of files allowed for a
brain integration.
2024-02-20 14:31:25 -08:00
Stan Girard
2a8014d3a2 fix: Refactor Celery configuration to use environment variables 2024-02-20 10:14:29 -08:00
Stan Girard
956ffbb5e0
Remove unused 'model' variable and logging statements (#2228)
This pull request removes the unused 'model' variable and logging
statements from the codebase.
2024-02-20 02:14:02 -08:00
Stan Girard
9658bb8742 Add integration logo URL to BrainsUsers constructor 2024-02-20 01:41:34 -08:00
Stan Girard
42db236e40 Add Redis password logging in celery_config.py 2024-02-20 01:03:43 -08:00
Stan Girard
4406f1deb2 Add result_backend to Celery configuration 2024-02-20 01:02:38 -08:00
Stan Girard
41057cd58c Add logger to celery_config.py 2024-02-20 00:21:40 -08:00
Stan Girard
f406afcc45
Add Redis configuration to celery_config.py (#2227)
This pull request adds Redis configuration to the `celery_config.py`
file. The `CELERY_BROKER_URL` has been replaced with `REDIS_HOST`,
`REDIS_PORT`, and `REDIS_PASS` environment variables to configure the
Redis broker and backend. This change allows for better integration with
Redis in the application.
2024-02-19 23:51:18 -08:00
Stan Girard
6db67cc7b6
feat: Add integration_logo_url to MinimalUserBrainEntity (#2225)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-19 22:33:18 -08:00
Stan Girard
0ec9eb00b8
feat(brains): added description (#2224)
This pull request updates the brain authorization and integration
entities. It includes changes to the `retrieve_brain_by_id`,
`update_existing_brain`, `update_existing_brain_secrets`,
`CreateApiBrainDefinition`, `CreateIntegrationBrain`,
`BrainIntegrationSettings`, `BrainIntegrationUpdateSettings`,
`CreateBrainProperties`, and `BrainUpdatableProperties` classes.
2024-02-19 21:44:06 -08:00
Stan Girard
4edf670028
feat: Add pricing calculation method to GPT4Brain class and update user usage in chat controller (#2216)
Reverts QuivrHQ/quivr#2215
2024-02-19 17:29:45 -08:00
Stan Girard
874c21f7e4
Revert "feat: Add pricing calculation method to GPT4Brain class and update user usage in chat controller" (#2215)
Reverts QuivrHQ/quivr#2210
2024-02-19 08:12:33 -08:00
Stan Girard
2c71e0edc7
feat: Add pricing calculation method to GPT4Brain class and update user usage in chat controller (#2210)
This pull request adds a new method called `calculate_pricing` to the
`GPT4Brain` class in the codebase. This method calculates the pricing
for the GPT4Brain model. Additionally, the user usage in the chat
controller has been updated to include the new pricing calculation
method.
2024-02-18 23:05:13 -08:00
Stan Girard
2ae8ec1739
feat: Update system templates with custom personality support (#2209)
This pull request updates the system templates to include support for
custom personality. It adds a new parameter called "custom_personality"
to the generate_stream function, which allows users to provide a custom
personality for the AI assistant. This feature enhances the user
experience by allowing them to personalize the assistant's responses.
2024-02-18 16:22:21 -08:00
Stan Girard
57ec5a634b
feat(custom): big brain (#2198)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-16 17:14:30 -08:00
Antoine Dewez
6ae529f614
fix(frontend): history to threads (#2201)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-16 16:28:27 -08:00
Stan Girard
ef6ee14440
feat(integration): improve (#2199)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-16 11:32:13 -08:00
Stan Girard
f9278da616 Refactor knowledge_brain_qa.py: Remove unused imports and update method calls 2024-02-14 23:54:52 -08:00
Stan Girard
743528a6e6 Add libpq-dev and gcc to Dockerfile 2024-02-14 20:29:57 -08:00
Stan Girard
33eedcf5eb Increase pip install timeout to 20000 2024-02-14 20:16:04 -08:00
Stan Girard
ba5ef60362
feat(integration): implementation (#2191)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-14 20:07:53 -08:00
Stan Girard
08e015af6c
feat(lcel): migrated to lcel and pydantic (#2185)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):

---------

Co-authored-by: Antoine Dewez <44063631+Zewed@users.noreply.github.com>
2024-02-14 14:01:35 -08:00
Stan Girard
2ba3bc1f07
feat: 🎸 ocr (#2187)
added ocr

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-12 19:56:20 -08:00
Stan Girard
5781596a5b
fix(daily-usage): Update daily requests count in UserUsage model (#2171)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-09 11:42:59 -08:00
Stan Girard
597fb4711a
feat: 🎸 telemetry (#2169)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-07 20:44:37 -08:00
Stan Girard
a1dbce559c Update image tags in AWS workflow and docker-compose.yml 2024-02-07 14:15:24 -08:00
Stan Girard
c0c0c7107a Remove unnecessary log statement in UserUsage class 2024-02-07 14:07:19 -08:00
Stan Girard
d562eb5e5e Update GitHub URLs 2024-02-07 13:59:48 -08:00
Stan Girard
7395dd0b44 Update URLs and dependencies 2024-02-07 13:57:44 -08:00
Stan Girard
03c49693b7
feat(chunks): now chunk size is saved in database dynamically and not just 500 (#2164)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-06 23:23:37 -08:00
Hamza Kyamanywa
75590093b9
fix(backend): typo in word response (#2158)
# Description

* This just corrects the word response in the function that reads chat
history.
* I have also noticed a little automatic change due to formatting. But
the update seems to be inline with the accepted formatting of this
project so I kept it.

## Checklist before requesting a review

Please delete options that are not relevant.

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [x] New and existing unit tests pass locally with my changes
- [x] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-06 20:10:19 -08:00
Stan Girard
503654c07a
perf: ️ signed_url (#2159)
improve speed by using memoisation

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-06 20:09:01 -08:00
Stan Girard
2f7e85ceae
tests: Add tests for deleting prompts by ID (#2156)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-06 19:38:08 -08:00
Stan Girard
11f76f4e75
fix(prompts): can now be removed (#2154)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-02-06 19:30:20 -08:00
Stan Girard
4d91d1cadc
feat(integrations): integration with Notion in the backend (#2123)
moved to brains

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):

---------

Co-authored-by: Antoine Dewez <44063631+Zewed@users.noreply.github.com>
2024-02-05 21:02:46 -08:00
Stan Girard
f5dc4ddd52 Refactor date comparison logic in ApiKeyService 2024-02-05 12:12:38 -08:00
Stan Girard
37b9901fe8
fix: 🐛 upload (#2112)
now you can download & view pdf

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-28 21:35:10 -08:00
Stan Girard
f83c58de7f fix: 🐛 brains
now default is way higher in tokens
2024-01-28 21:07:40 -08:00
Stan Girard
67c0c7fb1c fix: 🐛 sources
fixed
2024-01-28 20:12:28 -08:00
Stan Girard
66bb4b1867 feat: 🎸 sources
moved to own function
2024-01-28 16:01:54 -08:00
Stan Girard
982e122c5d fix: 🐛 sources
fixed
2024-01-28 15:37:25 -08:00
Stan Girard
652d2b32e2
fix: 🐛 brains (#2107)
selection now fixed

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-28 01:03:36 -08:00
Stan Girard
2e06b5c7f2
feat: 🎸 user-limits (#2104)
optimized number of calls

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-27 18:58:57 -08:00
Stan Girard
5f3b54d0bb fix(preview): fixed 2024-01-27 14:07:55 -08:00
Stan Girard
87ac37e643 feat: 🎸 datadog
cpu change
2024-01-27 13:47:54 -08:00
Stan Girard
dcf38a3e7c ci: 🎡 trigger 2024-01-27 13:43:05 -08:00
Stan Girard
1beb13b061 feat(datadog): added key 2024-01-27 13:33:27 -08:00
Stan Girard
59402dd8ee feat: 🎸 datadog
addedd
2024-01-27 13:17:20 -08:00
Stan Girard
fa46eb1512 feat: 🎸 datadog
addedd
2024-01-27 13:07:52 -08:00
Stan Girard
d801450341 feat: 🎸 apm
implemented datadog
2024-01-27 12:50:21 -08:00
Stan Girard
e575c71201 fix: 🐛 limits
now passing good value
2024-01-27 02:03:00 -08:00
Stan Girard
cc39f9e3ba
feat(14k): done (#2102)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-27 01:50:58 -08:00
Stan Girard
43d4f9155f
fix: 🐛 tests (#2095)
backend test fixed

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-26 16:10:16 -08:00
Stan Girard
7b2ff469eb
fix: 🐛 brain (#2096)
fixed when brainful is empty

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-26 16:04:30 -08:00
Stan Girard
5342de8d7b fix: 🐛 public-brains
add
2024-01-25 22:02:48 -08:00
Stan Girard
3892a990d2 fix: 🐛 close-brains
improved
2024-01-25 21:35:47 -08:00
Stan Girard
e7bd571ac5 feat: 🎸 rag
now works with 30 chunks
2024-01-25 20:19:56 -08:00
Stan Girard
6c5496f797
feat: 🎸 sources (#2092)
added metadata object a bit bigger

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-25 18:56:54 -08:00
Stan Girard
c5546fd374
fix: 🐛 related (#2090)
now updates

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-25 17:10:38 -08:00
Stan Girard
dfdb294c50
feat: 🎸 api (#2078)
adding metadata to api

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-25 15:56:46 -08:00
Stan Girard
ae81afbef5
fix: 🐛 crawl (#2076)
notification id issue when not in chat fixed

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-23 23:39:45 -08:00
Stan Girard
998ebe415c fix: 🐛 seed
fixed
2024-01-22 19:45:14 -08:00
Stan Girard
921ab11067
fix: 🐛 api (#2068)
error

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-22 17:33:48 -08:00
Stan Girard
3ac4f02b73
feat: 🎸 cpu (#2065)
increased

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-22 15:02:00 -08:00
Stan Girard
54eb76da25
fix: 🐛 usage (#2062)
fixed where monthly was used in daily

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-22 14:42:41 -08:00
Stan Girard
3375c0f0b9 fix: 🐛 brain
changes when selected
2024-01-22 12:31:59 -08:00
Stan Girard
e92e61326f
fix: 🐛 limits (#2058)
now monthly and better reading database

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-22 12:09:22 -08:00
Stan Girard
3a24990af5
feat: 🎸 usage (#2057)
moving from daily to monthly

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-22 11:46:26 -08:00
Stan Girard
6ce62b38e5
fix(api-brains): fixed with new types of brains (#2052)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-21 19:44:03 -08:00
Stan Girard
25a53a254b
feat: 🎸 brains (#2048)
update vectors at launch if missign

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-21 17:03:25 -08:00
Stan Girard
3e62ddeb91 fix(brains): default brains to private because front doesn't enforce 2024-01-21 15:40:42 -08:00
Stan Girard
35740ece3d fix: 🐛 premium
fixed error
2024-01-21 13:21:07 -08:00
Stan Girard
6ed4248d35
fix: 🐛 search (#2045)
fixed public brains avaiable

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-21 12:00:21 -08:00
Stan Girard
563ee470c8
feat(brains): added now multiple brains close by (#2039)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-20 18:39:03 -08:00
Stan Girard
15ba223f9c chore(docker): increased number of replicas 2024-01-20 13:51:03 -08:00
Stan Girard
d0b8b797f6
feat(search): new way to interact with Quivr (#2026)
Co-authored-by: Zewed <dewez.antoine2@gmail.com>
Co-authored-by: Antoine Dewez <44063631+Zewed@users.noreply.github.com>
2024-01-19 20:34:30 -08:00
Stan Girard
b18f45dfe1
fix: csp (#2016)
added preview env

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-13 19:43:02 -08:00
Stan Girard
5dd7acd11b fix(posthog): now is_was_premium 2024-01-04 14:17:10 +01:00
renovate[bot]
fe373fdd10
chore(deps): pin dependencies (#1975)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [actions/checkout](https://togithub.com/actions/checkout) | action |
pinDigest | -> `b4ffde6` |
| [actions/setup-node](https://togithub.com/actions/setup-node) | action
| pinDigest | -> `b39b52d` |
| [actions/setup-python](https://togithub.com/actions/setup-python) |
action | pinDigest | -> `65d7f2d` |
|
[aws-actions/amazon-ecr-login](https://togithub.com/aws-actions/amazon-ecr-login)
| action | pinDigest | -> `2fc7ace` |
|
[aws-actions/amazon-ecs-deploy-task-definition](https://togithub.com/aws-actions/amazon-ecs-deploy-task-definition)
| action | pinDigest | -> `df96430` |
|
[aws-actions/amazon-ecs-render-task-definition](https://togithub.com/aws-actions/amazon-ecs-render-task-definition)
| action | pinDigest | -> `4225e0b` |
|
[aws-actions/configure-aws-credentials](https://togithub.com/aws-actions/configure-aws-credentials)
| action | pinDigest | -> `5fd3084` |
| darthsim/imgproxy |  | pinDigest |  -> `0facd35` |
|
[docker/build-push-action](https://togithub.com/docker/build-push-action)
| action | pinDigest | -> `0a97817` |
|
[docker/build-push-action](https://togithub.com/docker/build-push-action)
| action | pinDigest | -> `4a13e50` |
| [docker/login-action](https://togithub.com/docker/login-action) |
action | pinDigest | -> `465a078` |
| [docker/login-action](https://togithub.com/docker/login-action) |
action | pinDigest | -> `343f7c4` |
|
[docker/setup-buildx-action](https://togithub.com/docker/setup-buildx-action)
| action | pinDigest | -> `885d146` |
|
[docker/setup-buildx-action](https://togithub.com/docker/setup-buildx-action)
| action | pinDigest | -> `f95db51` |
|
[docker/setup-qemu-action](https://togithub.com/docker/setup-qemu-action)
| action | pinDigest | -> `6882732` |
|
[google-github-actions/release-please-action](https://togithub.com/google-github-actions/release-please-action)
| action | pinDigest | -> `db8f2c6` |
| kong |  | pinDigest |  -> `1b53405` |
| [pavelzw/pytest-action](https://togithub.com/pavelzw/pytest-action) |
action | pinDigest | -> `510c5e9` |
| postgrest/postgrest |  | pinDigest |  -> `23b2dab` |
| python | final | pinDigest |  -> `0c1fbb2` |
| redis |  | pinDigest |  -> `a7cee7c` |
| supabase/edge-runtime |  | pinDigest |  -> `4e02aac` |
| supabase/gotrue |  | pinDigest |  -> `b503f1f` |
| supabase/logflare |  | pinDigest |  -> `e693c78` |
| supabase/postgres |  | pinDigest |  -> `fb8387f` |
| supabase/postgres-meta |  | pinDigest |  -> `31a107d` |
| supabase/realtime |  | pinDigest |  -> `634a59e` |
| supabase/storage-api |  | pinDigest |  -> `2cd146f` |
| supabase/studio |  | pinDigest |  -> `393669f` |
| timberio/vector |  | pinDigest |  -> `4bc04ac` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/StanGirard/quivr).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMDMuMSIsInVwZGF0ZWRJblZlciI6IjM3LjEwMy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-04 14:00:18 +01:00
Stan Girard
6ac7962ec7
feat: 🎸 posthog (#1978)
user settings to premium

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-04 13:57:13 +01:00
Stan Girard
07563bd079
fix: 🐛 models (#1973)
fixed when model is not choosen

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-04 12:31:17 +01:00
Stan Girard
09159a2ba1 fix: 🐛 requests
equals 0
2024-01-04 02:08:03 +01:00
Stan Girard
ff59ce99a6 fix: 🐛 user-usage
fixed calculation
2024-01-04 01:40:23 +01:00
Stan Girard
a65eb5a9cd
feat: 🎸 models (#1967)
updated available models

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-04 01:14:03 +01:00
Stan Girard
99120b387a
feat: 🎸 usage (#1966)
added check on customer if still valid

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2024-01-03 22:24:20 +01:00
Stan Girard
10d0ec0448 feat: 🎸 supabase
added usage of cli
2024-01-03 21:53:37 +01:00
Mamadou DICKO
7480e89fa9
feat: add new brain management page (#1906)
Issue: https://github.com/StanGirard/quivr/issues/1902

Demo:



https://github.com/StanGirard/quivr/assets/63923024/33170c91-3bdc-442a-918a-5013b423f8e5
2023-12-18 14:23:45 +01:00
Zineb El Bachiri
742e9bdfba
feat: chat with compositeBrain ( with/out streaming) (#1883)
# DONE

- generate_stream, generate and save answer in BE

# TODO

- Create an intermediary make_streaming_recursive_tool_calls async
function
- Save intermediary answers in new message logs column then fetch and
display in front
2023-12-15 11:43:41 +01:00
Stan Girard
4fa9a03cc1
feat: Update pytest command in Makefile and add new test (#1893) 2023-12-14 14:20:34 +01:00
Stan Girard
1ffe25eae4
feat: Remove unused method and update file processing (#1890)
logic

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-12-14 10:31:34 +01:00
Stan Girard
f05951937b feat: Add logger and update file sha1 2023-12-13 23:08:15 +01:00
Stan Girard
f723f8d729 feat: Add logging for brain vector creation 2023-12-13 20:58:13 +01:00
Stan Girard
4a305a854e
feat: Add file URL to DocumentAnswer objects (#1874)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-12-12 23:16:32 +01:00
Stan Girard
36b008e0eb
feat: Refactor get_question_context_for_brain endpoint (#1872)
to return a list of DocumentAnswer objects

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-12-12 22:33:23 +01:00
Stan Girard
1a2af91eef feat(premium): increased max size 2023-12-11 17:43:30 +01:00
Mamadou DICKO
512b9b4f37
feat: add custom rag first abstraction layer (#1858)
- Add `QAInterface` which should be implemented by all custom answer
generator to be compatible with Quivr
- Add `RAGInterface` which should be implemented by all RAG classes
2023-12-11 16:46:45 +01:00
Mamadou DICKO
7e6209a30b
feat: add generate_answer function to support non streamed response for api brain (#1847)
Issue: https://github.com/StanGirard/quivr/issues/1841

Demo:


https://github.com/StanGirard/quivr/assets/63923024/56dfa85c-6c2e-4e55-8eda-4723e58ced1d
2023-12-07 14:52:37 +01:00
Zineb El Bachiri
90c4a44525
feat: composite brains get (#1837)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-12-06 15:44:36 +01:00
Stan Girard
5619f2e602 feat(sentry): added on celery 2023-12-06 12:20:46 +01:00
Zineb El Bachiri
5bbc72eb09
feat: composite brains db (#1826)
# Description

- db for composite brains & repository
- composite brains creation
2023-12-06 08:40:18 +01:00
Stan Girard
8ba376e0a1
feat(requirements): update aws version (#1819)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-12-05 13:49:34 +01:00
Yon
5f23bcfcb8
fix: celery config typo (#1776)
# Description

There was a typo on one of the celery's config variables.
The `CELEBRY_BROKER_QUEUE_NAME` variable has been replaced by
`CELERY_BROKER_QUEUE_NAME`

## Checklist before requesting a review

Please delete options that are not relevant.

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
2023-12-05 09:40:40 +01:00
Stan Girard
b8f8851ccd feat(docker): multi platform build and prebuilt 2023-12-05 00:10:49 +01:00
Stan Girard
d0d74cecbb chore(ci): trigger it 2023-12-05 00:02:48 +01:00
Zineb El Bachiri
436e49a5e7
refactor: chat for multibrains (#1812)
# Description

- Chat Module
- External Api Secrets Interface, exposed through brain service
2023-12-04 18:38:54 +01:00
Stan Girard
ef53590b58
feat(embedding): now 100 times faster 🔥 (#1807)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-12-04 11:59:08 +01:00
Stan Girard
31c1802084
feat(api-keys): added customization (#1802)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-12-03 23:32:37 +01:00
Stan Girard
4c89812832 feat(supabase): upgraded to latest version 2023-12-03 20:26:26 +01:00
Stan Girard
a5ef5a0454 fix(supabase): fixed 2023-12-03 01:35:01 +01:00
Stan Girard
882a10c459 fix(prompt): fixed issue with wrong api key 2023-12-03 01:22:38 +01:00
Stan Girard
c82a8cc8b1
fix(url): crawling fixed (#1785)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-12-02 18:08:22 +01:00
Stan Girard
9e0bc0749f
feat: 🎸 install (#1784)
now made easy

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-12-02 14:50:57 +01:00
Stan Girard
72aaec2a1b
feat(supabase): local installation made easy (#1777)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-12-01 19:43:23 +01:00
Stan Girard
c0f8f50c49 feat(telemetry): implmented local telemetry for local runs 2023-12-01 17:02:46 +01:00
Zineb El Bachiri
f48dab4a7d
refactor: to modules (#1754)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-30 22:29:28 +01:00
Stan Girard
a84219f193
fix(api): fixed issue with name function and ilmproved promtp (#1759)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-29 23:54:39 +01:00
Stan Girard
e1cde0fcb4
Feat/local llm bug fix (#1758)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-29 19:17:16 +01:00
Mamadou DICKO
07618877a9
fix: revert implement local llms (#1749) 2023-11-29 13:19:22 +01:00
Mamadou DICKO
d5b45cbad1
chore: downgrade versions (#1748) 2023-11-29 13:18:52 +01:00
Zineb El Bachiri
9766befb53
refactor: knowledge module (#1743)
# Description

- Refactor knowledge to a module

- This PR breaks the Github Processor function -> need to comment brain
and file imports as it creates a circular dependency issue. Should be
fixed and reverted in next PR.
2023-11-29 09:04:03 +01:00
Stan Girard
7e4f711f07
feat: implement local llms (#1745)
upgraded

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-29 00:07:04 +01:00
Zineb El Bachiri
9858a484a1
refactor: remove explore route from back & front (#1741)
# Description

- Removes the explore route from back & front as it has been replaced by
the knowledge route
2023-11-28 14:28:05 +01:00
Zineb El Bachiri
0782df5e37
refactor: Notification module (#1740)
# Description

- Notification module

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-28 14:27:39 +01:00
Stan Girard
928e6b6ab2 chore(sentry): sampling 2023-11-28 08:46:42 +01:00
Stan Girard
7ff081cf40
fix: 🐛 crawler (#1735)
fixed

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-27 17:36:46 +01:00
Mamadou DICKO
10e94e5a91
feat: improve delete knowledge performance (#1733)
Issue: https://github.com/StanGirard/quivr/issues/1724
2023-11-27 16:47:13 +01:00
Mamadou DICKO
f1ddaca7e2
feat(publicBrains): use join queries for better performance (#1730)
Issue https://github.com/StanGirard/quivr/issues/1720
2023-11-27 14:16:27 +01:00
Mamadou DICKO
b252aa1794
fix: update max token logic (#1725)
Fix headless and Doc based brains max token overwriting
2023-11-27 11:21:26 +01:00
Stan Girard
56a5c81fe4
fix: 🐛 sentry (#1716)
reduce sampling

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-27 10:08:00 +01:00
Stan Girard
e3a6f86d7b fix: 🐛 upload
wrong ctrl f replace
2023-11-24 23:12:49 +01:00
Stan Girard
3ffe6a8d5a chore: 🤖 sentry
reduce sampling
2023-11-24 23:12:18 +01:00
Mamadou DICKO
65e656f04e
feat: add api brain steps log (backend) (#1705)
Issue https://github.com/StanGirard/quivr/issues/1697
2023-11-24 14:58:33 +01:00
Mamadou DICKO
65a4057272
feat: display notification when file size is too big (#1704)
Issue: 

https://github.com/StanGirard/quivr/issues/1703

Demo:


https://github.com/StanGirard/quivr/assets/63923024/76c9a294-ff0b-4d38-8683-2fefb710fd48
2023-11-24 14:54:16 +01:00
Stan Girard
a5518e6b2a chore(sentry): smaller sampling rate 2023-11-24 14:46:25 +01:00
Zineb El Bachiri
f578b2fa00
refactor: onboarding module (#1702)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-24 10:25:02 +01:00
Mamadou DICKO
4bb1a0dc8a
fix: update max token overwrite logic (#1694)
Issue: https://github.com/StanGirard/quivr/issues/1690
2023-11-23 17:36:11 +01:00
Pascal Gula
d893ec7d97
Fixes string formatting when logging knowledge table (#1691)
# Description

```
======================================================================
backend-core  | --- Logging error ---
backend-core  | Traceback (most recent call last):
backend-core  |   File "/usr/local/lib/python3.11/logging/__init__.py", line 1110, in emit
backend-core  |     msg = self.format(record)
backend-core  |           ^^^^^^^^^^^^^^^^^^^
backend-core  |   File "/usr/local/lib/python3.11/logging/__init__.py", line 953, in format
backend-core  |     return fmt.format(record)
backend-core  |            ^^^^^^^^^^^^^^^^^^
backend-core  |   File "/usr/local/lib/python3.11/logging/__init__.py", line 687, in format
backend-core  |     record.message = record.getMessage()
backend-core  |                      ^^^^^^^^^^^^^^^^^^^
backend-core  |   File "/usr/local/lib/python3.11/logging/__init__.py", line 377, in getMessage
backend-core  |     msg = msg % self.args
backend-core  |           ~~~~^~~~~~~~~~~
backend-core  | TypeError: not all arguments converted during string formatting
backend-core  | Call stack:
backend-core  |   File "<string>", line 1, in <module>
backend-core  |   File "/usr/local/lib/python3.11/multiprocessing/spawn.py", line 122, in spawn_main
backend-core  |     exitcode = _main(fd, parent_sentinel)
backend-core  |   File "/usr/local/lib/python3.11/multiprocessing/spawn.py", line 135, in _main
backend-core  |     return self._bootstrap(parent_sentinel)
backend-core  |   File "/usr/local/lib/python3.11/multiprocessing/process.py", line 314, in _bootstrap
backend-core  |     self.run()
backend-core  |   File "/usr/local/lib/python3.11/multiprocessing/process.py", line 108, in run
backend-core  |     self._target(*self._args, **self._kwargs)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/uvicorn/_subprocess.py", line 76, in subprocess_started
backend-core  |     target(sockets=sockets)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/uvicorn/server.py", line 61, in run
backend-core  |     return asyncio.run(self.serve(sockets=sockets))
backend-core  |   File "/usr/local/lib/python3.11/asyncio/runners.py", line 190, in run
backend-core  |     return runner.run(main)
backend-core  |   File "/usr/local/lib/python3.11/asyncio/runners.py", line 118, in run
backend-core  |     return self._loop.run_until_complete(task)
backend-core  |   File "/usr/local/lib/python3.11/asyncio/base_events.py", line 640, in run_until_complete
backend-core  |     self.run_forever()
backend-core  |   File "/usr/local/lib/python3.11/asyncio/base_events.py", line 607, in run_forever
backend-core  |     self._run_once()
backend-core  |   File "/usr/local/lib/python3.11/asyncio/base_events.py", line 1922, in _run_once
backend-core  |     handle._run()
backend-core  |   File "/usr/local/lib/python3.11/asyncio/events.py", line 80, in _run
backend-core  |     self._context.run(self._callback, *self._args)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/uvicorn/protocols/http/h11_impl.py", line 428, in run_asgi
backend-core  |     result = await app(  # type: ignore[func-returns-value]
backend-core  |   File "/usr/local/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 78, in __call__
backend-core  |     return await self.app(scope, receive, send)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/fastapi/applications.py", line 276, in __call__
backend-core  |     await super().__call__(scope, receive, send)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/starlette/applications.py", line 122, in __call__
backend-core  |     await self.middleware_stack(scope, receive, send)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 162, in __call__
backend-core  |     await self.app(scope, receive, _send)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 91, in __call__
backend-core  |     await self.simple_response(scope, receive, send, request_headers=headers)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 146, in simple_response
backend-core  |     await self.app(scope, receive, send)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 68, in __call__
backend-core  |     await self.app(scope, receive, sender)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__
backend-core  |     await self.app(scope, receive, send)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 718, in __call__
backend-core  |     await route.handle(scope, receive, send)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 276, in handle
backend-core  |     await self.app(scope, receive, send)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 66, in app
backend-core  |     response = await func(request)
backend-core  |   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 237, in app
backend-core  |     raw_response = await run_endpoint_function(
backend-core  |   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 163, in run_endpoint_function
backend-core  |     return await dependant.call(**values)
backend-core  |   File "/code/routes/knowledge_routes.py", line 37, in list_knowledge_in_brain_endpoint
backend-core  |     logger.info("List of knowledge from knowledge table", knowledges)
backend-core  | Message: 'List of knowledge from knowledge table'
backend-core  | Arguments: ([Knowledge(id=UUID('b5ae6a25-1e8e-4fb5-a0c1-0039a8318ec3'), brain_id=UUID('7af64537-61cb-48e1-b3d1-c700d748b373'), file_name='Cradle to Cradle Criteria for the built environmen.pdf', url=None, extension='.pdf'), Knowledge(id=UUID('efb7ad5a-a13e-46f3-a580-4c574710ad15'), brain_id=UUID('7af64537-61cb-48e1-b3d1-c700d748b373'), file_name='GEG_2023_gebaeudeenergiegesetz_kompakt_und_praktisch.pdf', url=None, extension='.pdf'), Knowledge(id=UUID('9442f898-0fbe-46d2-b6ae-a726d62717bd'), brain_id=UUID('7af64537-61cb-48e1-b3d1-c700d748b373'), file_name='dgnb-kriterienkatalog-gebaeude-neubau-version-2023-auflage-2.pdf', url=None, extension='.pdf')],)
======================================================================
```

## Checklist before requesting a review

Please delete options that are not relevant.

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [x] I have commented hard-to-understand areas
- [x] I have ideally added tests that prove my fix is effective or that
my feature works
- [x] New and existing unit tests pass locally with my changes
- [x] Any dependent changes have been merged
2023-11-23 17:25:57 +01:00
Zineb El Bachiri
1bf67e3640
refactor: Prompt module (#1688)
# Description

Prompt module with Service

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-23 14:13:21 +01:00
Stan Girard
85913c5db0 feat: 🎸 brainasapi
fixed size
2023-11-22 22:14:53 +01:00
Pascal Gula
8bbe6e7054
Adds pytesseract, tesseract and poopler-utils (#1648)
To enable the ingestion of copy protected PDF via OCR instead of text
extraction

# Description

Copy protected PDF can't be properly imported via the standard langchain
loader.

See the following errors:

```
2023-11-15 14:16:31,927 [INFO] models.files: Computing documents from file Cradle to Cradle Criteria for the built environmen.pdf
[nltk_data] Downloading package punkt to
[nltk_data]     /home/pascal_gula_luccid_ai/nltk_data...
[nltk_data]   Unzipping tokenizers/punkt.zip.
[nltk_data] Downloading package averaged_perceptron_tagger to
[nltk_data]     /home/pascal_gula_luccid_ai/nltk_data...
[nltk_data]   Unzipping taggers/averaged_perceptron_tagger.zip.
Error processing file: detectron2 is not installed, pytesseract is not installed and the text of the PDF is not extractable. To process this file, install detectron2, install pytesseract, or remove copy protection from the PDF.
```

```
2023-11-15 15:04:14,624 [INFO] models.files: Computing documents from file Cradle to Cradle Criteria for the built environmen.pdf
Error processing file: Unable to get page count. Is poppler installed and in PATH?
```

```
023-11-15 15:59:11,886 [INFO] models.files: Computing documents from file Cradle to Cradle Criteria for the built environmen.pdf
Error processing file: tesseract is not installed or it's not in your PATH. See README file for more information.
```


## Checklist before requesting a review

Please delete options that are not relevant.

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [x] I have commented hard-to-understand areas
- [x] I have ideally added tests that prove my fix is effective or that
my feature works
- [x] New and existing unit tests pass locally with my changes
- [x] Any dependent changes have been merged

## Screenshots (if appropriate):

None

Co-authored-by: Stan Girard <girard.stanislas@gmail.com>
2023-11-22 17:26:11 +01:00
Mamadou DICKO
d9a72b368a
feat: allow updating api brain definition (#1682)
Issue: 
https://github.com/StanGirard/quivr/issues/1683


Demo:


https://github.com/StanGirard/quivr/assets/63923024/67cf2a0f-4cfe-420c-9181-baffaa584c78




https://github.com/StanGirard/quivr/assets/63923024/eee57598-1520-4c11-bd64-887869878f46
2023-11-22 11:15:14 +01:00
Stan Girard
1a4c6c8741
feat: 🎸 tokens (#1678)
increased default value to 1000

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-22 08:47:51 +01:00
Stan Girard
536a7ae37c
fix: 🐛 api (#1676)
truncating long response

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-21 15:34:12 +01:00
Mamadou DICKO
d902e78ffa
feat(apiBrain): improve ux (#1672)
Demo:


https://github.com/StanGirard/quivr/assets/63923024/71efe888-285a-41ed-aa89-44e5f0b99162
2023-11-20 18:22:06 +01:00
Mamadou DICKO
3da64c0b0e
feat: update brain modal in chat input (#1668)
Issue: https://github.com/StanGirard/quivr/issues/1571

Demo:



https://github.com/StanGirard/quivr/assets/63923024/e7a6118e-29f8-44aa-af4b-0ea1b8013a33
2023-11-20 18:04:26 +01:00
Stan Girard
6a041b6f6d
feat: 🎸 openai (#1658)
cleaning old code to introduce better patern

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-20 01:22:03 +01:00
Stan Girard
d955e31f50
feat: 🎸 marketplace (#1657)
added explore button and removed unused feature openai key

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-19 18:46:12 +01:00
Stan Girard
744eea6d43
feat: 🎸 docker reduced size by 2 (#1653)
reduced size by 2

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-18 19:23:56 +01:00
Zineb El Bachiri
efe4e8ccb0
fix(brainManagement): fix shared brain access issue (#1641)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

fix/brain-management-shared-brain-access
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-16 19:57:02 +01:00
Zineb El Bachiri
18946ad329
fix: delete brain on users click in brains management (#1638)
# Description

Fix subscription routes on get users
Revert changes deleting the function to get user email from its id in
SQL


https://www.loom.com/share/46534965a83f4296898495ac370b3451?sid=7f582838-32f6-4812-960e-c80d71517a6d
2023-11-16 12:49:10 +01:00
Mamadou DICKO
fb4cfdcf9c
feat: add public api brain subscription (#1636)
Issue: https://github.com/StanGirard/quivr/issues/1570
2023-11-16 11:04:12 +01:00
Mamadou DICKO
1a5fa8ba0f
feat: update settings tab add api brain definition (#1635)
Issue: https://github.com/StanGirard/quivr/issues/1627

Demo:
<img width="1512" alt="Screenshot 2023-11-15 at 13 09 59"
src="https://github.com/StanGirard/quivr/assets/63923024/532c45ce-32d7-4af7-a71f-02eb6099538d">
2023-11-16 11:02:58 +01:00
Zineb El Bachiri
375f50356c
refactor: add modules folder (#1633)
# Description

New Modules folder with "user" module:
- controller: contains the current route
- entity: contains the current Models (TO be renamed DTO)
- repository: contains the current repo
- service: methods used by other modules 

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-15 13:17:51 +01:00
Mamadou DICKO
223af1d3f6
feat: add api brain creation frontend (#1631)
Issue: https://github.com/StanGirard/quivr/issues/1607

Demo:



https://github.com/StanGirard/quivr/assets/63923024/a087d856-e201-4b88-80b3-b001d7bb6b16
2023-11-15 12:42:19 +01:00
Zineb El Bachiri
1f21c6d7f3
refactor: packages folder be 2 (#1628)
# Description

Move some folders to packages
Remove unused code
2023-11-14 14:31:02 +01:00
Zineb El Bachiri
8f693bc92a
refactor: create "files" package (#1626)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-14 09:52:44 +01:00
Stan Girard
5a3f284785
test(all): added (#1624)
# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-14 08:36:44 +01:00
Mamadou DICKO
8ed0adf7b2
feat: remove api brain secrets and schemas on delete (#1621)
Issue: https://github.com/StanGirard/quivr/issues/1573
2023-11-13 19:08:47 +01:00
Stan Girard
ee864e6441
test(added): misc prompt onboarding (#1622)
Added tests for:

- Prompt
- Misc
- Onboarding
2023-11-13 19:02:10 +01:00
Stan Girard
6017fa2e9c test(contact): added contact route with mock 2023-11-13 17:58:11 +01:00
Stan Girard
ec60d3dbff ci(backend): added tests for user 2023-11-13 15:28:42 +01:00
Stan Girard
1e00f6929f fix: 🐛 docker
fixed multi stage
2023-11-13 15:03:55 +01:00
Mamadou DICKO
5e61445fb2
fix: update delete brain logic (#1619) 2023-11-13 15:02:10 +01:00
Stan Girard
6bc9dd1894
ci: 🎡 tests (#1615)
fixed

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-13 13:53:25 +01:00
Mamadou DICKO
f24779ff14
fix: add user id while creating default brain (#1616) 2023-11-13 12:16:38 +01:00
Mohamed Messaad
71d4a63a17
feat(docker): use multi-stage Docker builds for smaller images (#1614)
# Description

Currently, the production Docker images are very large, sitting at 4.17
GB for the frontend image, and 3.49 GB for backend images. This change
adds multi-stage builds, to optimize the image sizes, which results in
the following improvements:

- frontend image size: 4.17 GB -> 1.64 GB
- backend image size: 3.49 GB -> 1.71 GB

I hope this is appropriate as there is no open issue for this that I
know of.
I implemented this change and tested it locally, and would be glad to
discuss this and open an issue if necessary.

## Checklist before requesting a review

Please delete options that are not relevant.

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [x] I have commented hard-to-understand areas
- [x] New and existing unit tests pass locally with my changes

## Screenshots (if appropriate):
Image sizes before:
<img width="1416" alt="image"
src="https://github.com/StanGirard/quivr/assets/8296549/fcbb020f-8165-4549-ae30-823318691ec6">

Image sizes after:
<img width="1416" alt="image"
src="https://github.com/StanGirard/quivr/assets/8296549/d3f43c78-be26-4c38-9d23-9c1b0e9e37f2">
2023-11-13 10:13:56 +01:00
Mamadou DICKO
db5a6e4b9b
feat: allow users to chat with apis (#1612)
You can now create a brain which can fetch data from external APIs with
or without authentification

- POST query example with authentification 


https://github.com/StanGirard/quivr/assets/63923024/15013ba9-dedb-4f24-9e06-49daad9de7f3


- Get query example with authentification and search params



https://github.com/StanGirard/quivr/assets/63923024/1763875d-a8e9-4478-b07c-e99ca7337942


- Get query without authentification and search params



https://github.com/StanGirard/quivr/assets/63923024/f2742963-790d-4cb2-864a-8173979b650a
2023-11-09 16:58:51 +01:00
Mamadou DICKO
addcd27fce
feat: add APIBrainQA (#1606)
Issue: https://github.com/StanGirard/quivr/issues/1566
2023-11-08 16:07:21 +01:00
Zineb El Bachiri
ed5de8b80c
feat: supabase vault (#1605)
# Description

https://github.com/StanGirard/quivr/issues/1551

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-07 16:57:25 +01:00
Mamadou DICKO
dd2bc1f6fc
feat: add brain_type column to brain table (#1603)
Issue: https://github.com/StanGirard/quivr/pull/1601

Demo:


https://github.com/StanGirard/quivr/assets/63923024/a7fe76a7-8809-4ec7-b1e6-d6fe36928a5c
2023-11-07 16:23:52 +01:00
Mamadou DICKO
9382762d01
feat: add api_brain_definition table (#1601)
Issue: https://github.com/StanGirard/quivr/issues/1549
2023-11-07 14:03:50 +01:00
Stan Girard
1d3554cb92
feat: 🎸 source documents (#1598)
are kept only once

# Description

Please include a summary of the changes and the related issue. Please
also include relevant motivation and context.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):
2023-11-06 17:19:26 +01:00
Mamadou DICKO
3c0819de09
fix: allow users to delete brains (#1596)
Issue: https://github.com/StanGirard/quivr/issues/1362

Demo:


https://github.com/StanGirard/quivr/assets/63923024/aa5e41f8-a738-41f2-b037-975788ad8611
2023-11-06 16:58:03 +01:00
Stan Girard
192610d008
feat: 🎸 sources (#1591)
added sources in front and backend

<img width="1536" alt="image"
src="https://github.com/StanGirard/quivr/assets/19614572/eb997288-282d-4f6e-b489-08ab3db400c6">
2023-11-06 12:09:18 +01:00
Stan Girard
ab11b384f7 fix: 🐛 parsers
pdf and odt to unstructured
2023-11-05 22:43:46 +01:00