Commit Graph

159 Commits

Author SHA1 Message Date
Stan Girard
848aed46ea
Revert "feat: Add Google Drive & Sharepoint sync in backend" (#2603)
Reverts QuivrHQ/quivr#2592
2024-05-21 08:37:08 -07:00
Stan Girard
8303aca9d9
feat: Add Google Drive & Sharepoint sync in backend (#2592)
# 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-05-21 07:53:04 -07:00
Stan Girard
d84b8e79d6
fix: sender email address in resend_invitation_email.py (#2600)
This pull request fixes the sender email address in the
`resend_invitation_email` function in the `resend_invitation_email.py`
file. The `from` field has been changed to `sender` to ensure that the
correct email address is used when sending the invitation email.
2024-05-21 03:27:05 -07:00
Stan Girard
1b60f59ad7
feat: Update ChatLiteLLM model and add RLS optimization for notifications (#2591)
This pull request updates the ChatLiteLLM model to "gpt-4o" and adds a
row-level security (RLS) optimization for notifications. It also
includes a new SQL script to drop and create a policy for allowing user
access to all notifications.
2024-05-14 01:43:01 -07:00
Stan Girard
cd927ebdcf
feat: Add support for gpt-4o model (#2589)
This pull request adds support for the gpt-4o model to the existing
codebase. It includes changes to the BrainConfig, openAiFreeModels,
defineMaxTokens, model_compatible_with_function_calling, create_graph,
main, and process_assistant functions.
2024-05-13 14:07:41 -07:00
Stan Girard
3086891cb7
fix: Update import statements for OllamaEmbeddings (#2584)
This pull request fixes the import statements for OllamaEmbeddings in
multiple files. The import statements are updated to use the correct
package name "langchain_community.embeddings" instead of
"langchain.embeddings.ollama". This ensures that the code can be
compiled and executed without any import errors.
2024-05-11 11:50:13 -07:00
Stan Girard
2f3cbb67d2 Update api_key default value in WebSearchTool 2024-05-10 23:49:08 +02:00
Stan Girard
b60a31e561
docs: Add docstrings to integration brains (#2582)
This pull request adds comprehensive docstrings to the Brain classes
within the `backend/modules/brain/integrations` directory, enhancing
code documentation and readability. The changes include:

- **BigBrain (`Big/Brain.py`)**: Adds a class-level docstring explaining
the purpose and functionality of the BigBrain class, along with
method-level docstrings detailing the operations performed by each
method.
- **ClaudeBrain (`Claude/Brain.py`)**: Introduces a class-level
docstring that describes the ClaudeBrain class's integration with the
Claude model for conversational AI capabilities, and method-level
docstrings that clarify the purpose of each method.
- **GPT4Brain (`GPT4/Brain.py`)**: Updates include a detailed
class-level docstring outlining the GPT4Brain's integration with GPT-4
for real-time answers and tool support, along with method-level
docstrings explaining the functionality of each method.
- **NotionBrain (`Notion/Brain.py`)**: Adds a class-level docstring that
describes the NotionBrain's role in leveraging Notion data for
knowledge-based responses.
- **ProxyBrain (`Proxy/Brain.py`)**: Incorporates a class-level
docstring explaining the ProxyBrain's function as a dynamic language
model selector and method-level docstrings detailing the operations of
each method.

These additions ensure that each Brain class and its methods are
well-documented, providing clear insights into their purposes and
functionalities.


---

For more details, open the [Copilot Workspace
session](https://copilot-workspace.githubnext.com/QuivrHQ/quivr?shareId=b4e301ad-828e-4424-95ec-6e378d5d3849).
2024-05-10 14:46:55 -07:00
Stan Girard
bbcca2a8fe
docs: Update GPT4 documentation with available tools and use cases (#2580)
Updates the GPT-4 documentation and the `GPT4Brain` class to include
detailed information about the tools available for GPT4Brain and their
use cases.

- **Documentation (`docs/brains/gpt4.mdx`):**
- Adds a new section titled "Tools Available for GPT4Brain" that
describes specific tools: WebSearchTool, ImageGeneratorTool,
URLReaderTool, and EmailSenderTool.
- Provides use cases for each tool, demonstrating how they can be
utilized within GPT4Brain for various scenarios, such as generating
images, reading content from URLs, and sending emails.

- **Code (`backend/modules/brain/integrations/GPT4/Brain.py`):**
- Updates the class documentation to include information about the tools
available for GPT4Brain and outlines use cases for WebSearchTool,
ImageGeneratorTool, URLReaderTool, and EmailSenderTool.
- Maintains the existing functionality of the `GPT4Brain` class,
ensuring compatibility with the newly documented tools and use cases.


---

For more details, open the [Copilot Workspace
session](https://copilot-workspace.githubnext.com/QuivrHQ/quivr?shareId=2c2c1666-e5fb-4a06-bb08-ca967f4fe276).
2024-05-10 09:33:21 -07:00
Stan Girard
01c6e7b3bb
feat(email): Add email sender tool and update image generator tool (#2579)
This pull request adds a new email sender tool and updates the image
generator tool.
2024-05-10 07:56:51 -07:00
Stan Girard
105a2b8ecc
feat(tool): Add URLReaderTool (#2577)
This pull request adds the URLReaderTool to the list of tools in the
GPT4Brain class. The URLReaderTool allows for reading the content of a
URL.
2024-05-10 05:03:21 -07:00
Stan Girard
a4e2104cad
feat(brave-search): Update GPT4Brain tools and add WebSearchTool (#2576)
# 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-05-10 03:22:15 -07:00
Stan Girard
03ebbe70fe
chore: tools (#2575)
# 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-05-10 02:42:49 -07:00
Stan Girard
9b4142d0ba
fix: NEXT_PUBLIC_AUTH_MODES in docker-compose.yml (#2572)
This pull request fixes the value of NEXT_PUBLIC_AUTH_MODES in the
docker-compose.yml file. The previous value was incorrect and has been
updated to the correct value.
2024-05-10 01:25:29 -07:00
Stan Girard
4e5b0c0373
feat(gpt4): image generation (#2569)
This pull request adds a new feature to generate images using the OpenAI
DALL-E model. The `ImageGeneratorTool` class is implemented to handle
the image generation functionality.
2024-05-09 10:00:51 -07:00
imgbot[bot]
854cf9ef7c
[ImgBot] Optimize images (#2568)
## Beep boop. Your images are optimized!

Your image file size has been reduced by **22%** 🎉

<details>
<summary>
Details
</summary>

| File | Before | After | Percent reduction |
|:--|:--|:--|:--|
| /backend/modules/assistant/ito/utils/logo.png | 65.29kb | 23.44kb |
64.09% |
| /docs/images/brain-name-description.png | 183.55kb | 117.44kb | 36.02%
|
| /docs/images/upload-docs-urls.png | 195.53kb | 125.67kb | 35.73% |
| /docs/images/supabase-table.png | 303.63kb | 200.92kb | 33.83% |
| /docs/images/2024-04-22-21-49-27.png | 103.47kb | 69.76kb | 32.58% |
| /docs/images/vercel-source.png | 419.37kb | 303.08kb | 27.73% |
| /docs/images/create-brain-doc.png | 258.97kb | 188.74kb | 27.12% |
| /frontend/public/state-of-openai.png | 2,226.61kb | 1,631.89kb |
26.71% |
| /docs/images/supabase-user-settings-models.png | 68.30kb | 51.37kb |
24.79% |
| /docs/images/supabase-user-settings.png | 234.70kb | 182.26kb | 22.34%
|
| /logo.png | 162.43kb | 138.77kb | 14.56% |
| /frontend/public/default_brain_image.png | 5.14kb | 4.39kb | 14.47% |
| /frontend/public/discord.svg | 1.99kb | 1.84kb | 7.45% |
| /frontend/public/Web capture_22-10-2023_19416_www.quivr.app.jpeg |
108.15kb | 100.97kb | 6.64% |
| /frontend/public/Web capture_22-10-2023_19154_www.quivr.app.jpeg |
106.38kb | 99.42kb | 6.54% |
| /frontend/public/twitter.svg | 0.71kb | 0.67kb | 5.87% |
| /docs/images/undraw_docusaurus_mountain.svg | 30.75kb | 29.20kb |
5.04% |
| /docs/images/undraw_docusaurus_react.svg | 35.16kb | 33.60kb | 4.43% |
| /frontend/public/logo-white.svg | 39.07kb | 37.44kb | 4.16% |
| /frontend/public/logo-accent.svg | 39.07kb | 37.44kb | 4.15% |
| /frontend/public/logo-primary.svg | 39.07kb | 37.44kb | 4.15% |
| /docs/images/logo.png | 277.32kb | 267.54kb | 3.53% |
| /frontend/public/logo.png | 277.35kb | 267.56kb | 3.53% |
| /docs/images/undraw_docusaurus_tree.svg | 11.61kb | 11.42kb | 1.62% |
| /frontend/public/vercel.svg | 0.61kb | 0.61kb | 0.16% |
| /frontend/public/Homepage/smartphone-demo.png | 461.57kb | 461.44kb |
0.03% |
| | | | |
| **Total :** | **5,655.79kb** | **4,424.34kb** | **21.77%** |
</details>

---

[📝 docs](https://imgbot.net/docs) | [:octocat:
repo](https://github.com/imgbot/ImgBot) | [🙋🏾
issues](https://github.com/imgbot/ImgBot/issues) | [🏪
marketplace](https://github.com/marketplace/imgbot)

<i>~Imgbot - Part of [Optimole](https://optimole.com/) family</i>

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>
Co-authored-by: ImgBotApp <ImgBotHelp@gmail.com>
2024-05-09 07:16:31 -07:00
Stan Girard
f5cfa2f6fa
feat(gpt4): Add search functionality (#2566)
This pull request adds search functionality to the application The
search functionality allows users to search the internet for
information.
2024-05-09 07:01:33 -07:00
Stan Girard
e33d497598
feat(crawler): Add Playwright for web crawling (#2562)
This pull request adds the Playwright library for web crawling. It
includes the necessary dependencies and updates the code to use
Playwright for crawling websites.
2024-05-08 07:20:35 -07:00
Stan Girard
cd73412e8f
Revert "feat(celery): moved assistant summary to celery" (#2558)
Reverts QuivrHQ/quivr#2557
2024-05-07 09:20:42 -07:00
Stan Girard
55834365b2
feat(celery): moved assistant summary to celery (#2557)
This pull request moves the assistant summary functionality to the
celery module for better organization and separation of concerns.
2024-05-07 09:12:31 -07:00
Stan Girard
6b229a8fc3
feat(notion): update doc (#2542)
# 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-05-04 11:16:24 -07:00
Stan Girard
0dd1d12e6a
Add config parameter to conversational_qa_chain (#2540)
This pull request adds a new config parameter to the
`conversational_qa_chain` function. The config parameter allows for
passing metadata, specifically the conversation ID, to the function.
This change ensures that the conversation ID is included in the metadata
when invoking the `conversational_qa_chain` function.
2024-05-04 11:05:29 -07:00
Stan Girard
21e239c208
feat(brain): Add ProxyBrain integration (#2536)
This pull request adds the ProxyBrain integration to the project. The
ProxyBrain class is responsible for handling conversational QA and
generating answers based on the provided chat history and question.
2024-05-03 06:53:51 -07:00
Antoine Dewez
8d54187713
feat(user): Delete User Data from frontend (#2476)
# 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-05-02 02:31:58 -07:00
Stan Girard
62bfc3c8d9
fix: Refactor chat_service.py and remove unused code (#2530)
# 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-05-01 15:26:14 -07:00
Stan Girard
e1ad3dfb2a
feat(notifications): implemented notifications with RLS and realtime (#2525)
This pull request adds the implementation of the notifications feature,
including the ability to create, update, and delete notifications.
2024-05-01 11:11:12 -07:00
Damien Mourot
fb3aae27f1
feat(backend): use SQLAlchemy instead od supabase API (#2516)
# 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-29 01:27:50 -07:00
Stan Girard
5de8166e46
feat(supabase): Add logging statements and refactor Supabase client creation (#2514)
# 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-28 07:23:14 -07:00
Stan Girard
d2086a97d3 Refactor logging configuration and remove unused imports 2024-04-28 13:35:07 +02:00
Stan Girard
785066f9cb
fix(metadata): Removed citation from metadata (#2507)
This pull request removes the citation metadata from the generate_answer
and generate_stream functions. The citation metadata was previously
being added to the streamed_chat_history and metadata dictionaries, but
it is no longer necessary. This change improves the efficiency and
clarity of the code.
2024-04-27 05:19:13 -07:00
Stan Girard
2be6aac02a
feat(embedding): keeping citations (#2506)
This pull request updates the chunk size and overlap parameters in the
File class to improve performance. It also increases the top_n value in
the compressor for both the CohereRerank and FlashrankRerank models.
Additionally, it ensures that the page content is encoded in UTF-8
before processing.
2024-04-27 05:18:51 -07:00
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
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
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