Commit graph

989 commits

Author SHA1 Message Date
Shi Jin
3d40dce76a
feat: update Dockerfile to include curl (#539)
* Update Dockerfile for include curl

* missing RUN
2023-06-22 12:43:12 -04:00
Danny Avila
d1d7f61fe1
style(SubmitButton.jsx): fix formatting and indentation of code blocks (#540)
feat(SubmitButton.jsx): add z-index to button to ensure it is on top of other elements
2023-06-21 11:13:31 -04:00
Danny Avila
f84da37c9c
feat(Functions Agent): use official langchain function executor/agent for better output handling (#538)
* style(FunctionsAgent.js): remove unnecessary comments and update PREFIX variable
refactor(initializeFunctionsAgent.js): update to use initializeAgentExecutorWithOptions
deps(package.json): update langchain to v0.0.95
refactor(askGPTPlugins.js): pass endpointOption to onStart function

* fix(ChatAgent.js): handle undefined delta content in progressMessage.choices array
2023-06-19 14:15:56 -04:00
Shi Jin
49e2cdf76c
Create container.yml: build and push docker image upon tagging (#536) 2023-06-18 20:19:08 -04:00
Fuegovic
76e51b8ac5
Update[logo] README.md (#535) 2023-06-18 15:48:35 -04:00
Danny Avila
ac537b96f6
style: mobile optimizations, use fixed dialogs, and prevent auto-scroll for presets (#534)
* style(client): adjust height and add overflow to EditPresetDialog, AgentSettings, and Settings components
style(client): adjust size and add overflow to NewConversationMenu and PresetItems components
style(ui): add overflow to DialogContent component

* style(Settings.jsx): change height of settings component to md:h-[350px] h-[490px]
2023-06-18 11:24:22 -04:00
Danny Avila
4f47da8f0d
build(docker-compose.yml): change the image name to librechat (#530)
fix(docker-compose.yml): add target node to build command
2023-06-17 16:41:22 -04:00
Danny Avila
f1f33de4db
chore: Update docker, Minor Styling fix (#528)
* chore(docker): add .env and **/.env to .dockerignore
refactor(docker): remove unnecessary .env file copy and removal in Dockerfile

* style(AgentSettings): adjust Switch placement fix(EditPresetDialog): correctly show functions setting in preset
2023-06-17 11:38:48 -04:00
Daniel Avila
9778e73087 style(OptionHover.jsx): add descriptions for new types
feat(AgentSettings.jsx): change OptionHover type from 'temp' to 'func' and from 'temp' to 'skip'
2023-06-16 00:04:35 -04:00
Daniel Avila
4353d42035 feat(tools): add structured Wolfram tool 2023-06-16 00:04:35 -04:00
Daniel Avila
d0be2e6f4a feat(ChatAgent.js): add support for skipping completion mode in ChatAgent
feat(ChatAgent.js): add a check for images when completion is skipped to add to response
feat(askGPTPlugins.js): add skipCompletion option to agentOptions
feat(client): add Switch component to ui components and use for new Agent Settings
chore(package.json): ignore client directory in nodemonConfig
2023-06-16 00:04:35 -04:00
Daniel Avila
5b1efc48d1 refactor(FunctionsAgent.js): remove unnecessary text from PREFIX constant 2023-06-16 00:04:35 -04:00
Daniel Avila
7053d76f48 feat(FunctionsAgent): improve LLM instructions for more reliable results 2023-06-16 00:04:35 -04:00
Daniel Avila
9f930ecf7d fix: remove public/images directory and image created during testing 2023-06-16 00:04:35 -04:00
Daniel Avila
dfec4bfe3a refactor(ChatAgent.js, handlers.js): stringify toolInput object in logs
The `toolInput` object was not being properly logged in the `ChatAgent.js` and `handlers.js` files. The `JSON.stringify()` method was added to properly log the object.
2023-06-16 00:04:35 -04:00
Daniel Avila
7541e9b3d3 refactor(StableDiffusion.js): update prompt and negative_prompt schema descriptions to include minimum number of keywords
fix(StableDiffusion.js): fix output path for generated image
feat(askGPTPlugins.js): update import path for validateTools function
2023-06-16 00:04:35 -04:00
Daniel Avila
bffa9ad016 refactor(handleTools.js): change loadTools function signature to include functions parameter
feat(handleTools.test.js): add test for loading StructuredSD tool with functions parameter
2023-06-16 00:04:35 -04:00
Daniel Avila
d339c291fa refactor(langchain/tools): move availableTools import to tools/index.js 2023-06-16 00:04:35 -04:00
Daniel Avila
a42ef2944c feat(StableDiffusion.js): add StableDiffusionAPI as a StructuredTool for Functions Agent 2023-06-16 00:04:35 -04:00
Daniel Avila
1b3215c55d refactor(tools): restructure tool dir 2023-06-16 00:04:35 -04:00
Daniel Avila
71d812403e refactor(ChatAgent.js, handlers.js): improve logging format and add support for functionsAgent
- Improve logging format in ChatAgent.js by adding more details to the log
- Add support for functionsAgent in ChatAgent.js to format the log differently
- Improve formatAction function in handlers.js to handle empty thoughts and add support for functionsAgent
2023-06-16 00:04:35 -04:00
Daniel Avila
6e183b91e1 refactor(FunctionsAgent.js): change var to const in plan function 2023-06-16 00:04:35 -04:00
Daniel Avila
198f60c536 feat(frontend): add support for agent selection in GPT plugins in adding functions agent
Add support for selecting an agent in the GPT plugins endpoint. The agent can be selected from a dropdown menu in the AgentSettings component. The default agent is set to 'classic' in the cleanupPreset, getDefaultConversation, and handleSubmit functions.
2023-06-16 00:04:35 -04:00
Daniel Avila
3caddd6854 feat(experimental): FunctionsAgent, uses new function payload for tooling 2023-06-16 00:04:35 -04:00
Fuegovic
550e566097
docs: fix/update (#525)
* Update README.md

* Update Hetzner doc

* Update heroku.md

* Update README.md

* Create breaking_changes.md

* Update README.md

* Update breaking_changes.md
2023-06-16 00:02:29 -04:00
Dan Orlando
3634d8691a
Feat/startup config api (#518)
* feat: add api for config

* feat: add data service to client

* feat: update client pages with values from config endpoint

* test: update tests

* Update configurations and documentation to remove VITE_SHOW_GOOGLE_LOGIN_OPTION and change VITE_APP_TITLE to APP_TITLE

* include APP_TITLE with startup config

* Add test for new route

* update backend-review pipeline

* comment out test until we can figure out testing routes in CI

* update: .env.example

---------

Co-authored-by: fuegovic <32828263+fuegovic@users.noreply.github.com>
2023-06-15 12:36:34 -04:00
Alex
2da81db440
Update stable_diffusion.md (#523)
* Update stable_diffusion.md

added description for dockerized stable diffusion deployment.

* Update stable_diffusion.md

minor changes to documentation
2023-06-14 10:17:11 -04:00
Alex
3e98486190
fully dockerized development with VS-code devcontainers (#524)
Co-authored-by: bll <bll@tgw-group.com>
2023-06-14 10:14:24 -04:00
Danny Avila
ff2c8e6614
style(Input): remove unnecessary z-index class from input field (#522) 2023-06-13 23:52:17 -04:00
Danny Avila
36a524a630
feat(OpenAI, PaLM): Add model support for new OpenAI models and codechat-bison (#516)
* feat(OpenAI, PaLM): add new models
refactor(chatgpt-client.js): use object to map max tokens for each model
refactor(askChatGPTBrowser.js, askGPTPlugins.js, askOpenAI.js): comment out unused function calls and error handling
feat(askGoogle.js): add support for codechat-bison model
refactor(endpoints.js): add gpt-4-0613 and gpt-3.5-turbo-16k to available models for OpenAI and GPT plugins
refactor(EditPresetDialog.jsx): hide examples for codechat-bison model in google endpoint

style(EndpointOptionsPopover.jsx): add cn utility function import and use it to set additionalButton className

refactor(Google/Settings.jsx): conditionally render custom name and prompt prefix fields based on model type

The code has been refactored to conditionally render the custom name and prompt prefix fields based on the type of model selected. If the model starts with 'codechat-', the fields will not be rendered.

refactor(Settings.jsx): remove duplicated code and wrap a section in a conditional statement based on a variable

style(Input): add z-index to Input component to fix overlapping issue
feat(GoogleOptions): disable Examples button when model starts with 'codechat-' prefix

* feat(.env.example, endpoints.js): add PLUGIN_MODELS environment variable and use it to get plugin models in endpoints.js
2023-06-13 16:42:01 -04:00
heathriel
42583e7344
Create HetznerUbuntuSetup.md (#492)
* Create HetznerUbuntuSetup.md

Step-by-step guide for someone who is starting from scratch on this project with a bare server.

* Updated Readme & Heroku

I submitted the original Heroku.md (to the discord) and they are way out of date. Just corrected them, moved the Hetzner file to the cloud deploy, and updated the readme to point to the file.

* Update HetznerUbuntuSetup.md

* Update README.md
2023-06-13 14:36:13 -04:00
Danny Avila
bccd0cb3dd
fix(nodemon): will now follow nodemonConfig in package file (#514) 2023-06-13 14:31:45 -04:00
Alex
07fec3b958
Update .dockerignore (#510)
fixes bug: #505

as described here: https://devpress.csdn.net/cloudnative/63054374c67703293080f1eb.html

Co-authored-by: Danny Avila <110412045+danny-avila@users.noreply.github.com>
2023-06-13 14:29:25 -04:00
Fuegovic
4dc3c31df8
docs update (#508)
* doc update: stable_diffusion.md

update docker specific instruction for Stable Diffusion

* doc update: .env.example

* Update README.md

update sponsors list

* Update stable_diffusion.md

* Update stable_diffusion.md

* Update stable_diffusion.md

* Update .env.example

* Update docker-compose.yml

* Update .env.example
2023-06-13 14:27:57 -04:00
Danny Avila
821b507e0e
fix(docker): handle .env file to read frontend vars during build easily (#513)
- Remove api/.env and .env from .dockerignore file
- Add COPY .env .env to Dockerfile to copy .env file to docker build
- Add RUN rm .env to Dockerfile to remove .env file after build
- Remove build args from docker-compose.yml file
2023-06-13 12:12:27 -04:00
Danny Avila
9d3e749104
feat(prepare.js): add script to install husky only if NODE_ENV is not 'CI' (#512)
refactor(package.json): change prepare script to run prepare.js script instead of husky install directly
2023-06-13 11:36:54 -04:00
Dan Orlando
2003480fed
Change prepare script to not run in CI mode and remove --ignore-scripts flag from workflow (#491)
* Change prepare script to not run in CI mode and remove --ignore-scripts flag from workflow

* add release/* to branches for workflows
2023-06-13 09:20:47 -04:00
Danny Avila
ee52533339
refactor(DALL-E.js): remove unused genAzureEndpoint import and commented code (#506)
feat(DALL-E.js): add getApiKey method to retrieve DALLE_API_KEY from environment variable
2023-06-13 08:58:09 -04:00
Danny Avila
72e9828b76
tests(api): refactor to mock database and network operations (#494) 2023-06-13 00:04:01 -04:00
LaraClara
f92e4f28be bugfix(install): Handle missing .env.example 2023-06-12 20:59:46 -04:00
LaraClara
60bcd7ae49 chore: Add more comments and user messages to create-user cmd 2023-06-12 20:59:46 -04:00
LaraClara
87fa9f9ab0 feature: Create a user from the command line 2023-06-12 20:59:46 -04:00
LaraClara
6c5bea0096 chore: Rename color-console.js to helper.js and add askQuestion as exported fn 2023-06-12 20:59:46 -04:00
LaraClara
c5325cee3a chore: Change package names to be meaningful
- Makes it easier to call them from the outside or even include the package in a different project (ie frontend only)
2023-06-12 20:59:46 -04:00
LaraClara
e726e42cb5 chore: Add color to the install script
- This will only work on terminals setup to use color
2023-06-12 20:59:46 -04:00
LaraClara
4c340fd0ba chore: Add warning if mongodb url looks incorrect in install 2023-06-12 20:59:46 -04:00
LaraClara
cefdd1fb88 feature: Ask for mongodb url during the npm install 2023-06-12 20:59:46 -04:00
Daniel Avila
3ff8d6f90b style(DropdownMenu.tsx): change DropdownMenuRadioItem className to fix styling issue 2023-06-11 16:45:54 -04:00
Daniel Avila
9a965907a2 test(DialogTemplate.spec.tsx): add tests for DialogTemplate component with all props and without optional props. Add test for selectHandler function when select button is clicked. 2023-06-11 16:45:54 -04:00
Daniel Avila
297291c541 feat(frontend-review.yml): add support for dev branch in frontend unit tests workflow 2023-06-11 16:45:54 -04:00