* prompt caching for anthropic llm and agent providers
* add UI for control of ENV
simplify implementation
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* feat: add AWS Bedrock API Key option to settings panel
* feat: Bedrock API key auth method
* fix: hide IAM note when using bedrock api key
* move to camcelCase identifier for bedrock api key use
linting
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* paperless ngx data connector
* wip resync paperless ngx
* fix generateChunkSource for resyncing paperless ngx
* lint
* Refactor Paperless-NGX connector
Fix issue with date rendering in tooltip + extended width
Move tooltip details to be column for more space
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* feat: add web app manifest and mobile PWA meta tags
* feat: serve dynamic manifest.json with custom branding for pwa
* feat: add ios status bar theming for pwa
* fix: prevent overscroll behavior for mobile
* fix: prevent ios safari auto-zoom on chat input
* fix: remove theme-color meta tags conflicting with ios status bar
* fix: add missing apple-mobile-web-app-capable meta tag for ios pwa
* fix: move catch-all route after manifest endpoint to prevent interception
* feat: add pwa detection helper and conditional styling for standalone mode
* PWA refactor
* undo changes to native CSS
* class fix
* proper response obj
* fix patch for import
* fix manifest errors
---------
Co-authored-by: Christian De Santis <christian.constantino98@gmail.com>
* Refactor DefaultChat component to display a simple welcome message instead of mock chat interface onboarding text
* Add last visited workspace functionality
- Implemented localStorage management for the last visited workspace in DefaultChat and WorkspaceChat components.
- Updated UserButton to clear last visited workspace on logout.
- Refactored workspace navigation to prioritize last visited workspace if available.
* Refactor workspace fetching & last visited workspace logic into one useEffect
* Enhance loading state in DefaultChat component with skeleton UI elements for improved user experience
* minor UI spacing changes
* refactor order for guard clauses for early exit conditions
* move last known to end of getWorkspace loader
* languages for PR #4542 (#4550)
* languages for PR #4542
* Drop welcome message keys from translations
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* Reimplement Cohere models
- Redo LLM implementation to grab models from endpoint and pre-filter
- Migrate embedding models to also grab from remote
- Add records for easy context window lookup'
* fix comment
* auto model context limit detection for ollama llm provider
* auto model context limit detection for lmstudio llm provider
* Patch Ollama to function and sync context windows like Foundry
* normalize how model context windows are cached from endpoint service
todo: move this into global utility class with MODEL_MAP
eager load models on boot to pre-cache them
add performance model improvements into ollama agent as well as apply n_ctx
* remove debug log
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* add microsoft foundry local llm and agent providers
* minor change to fix early stop token + overloading of context window
always use user defined window _unless_ it is larger than the models real contenxt window
cache the context windows when we can from the API (0.7.*)+
Unload model forcefully on model change to prevent resource hogging
* add back token preference since some models have very large windows and can crash a machine
normalize cases
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* WIP agentic tool call streaming
- OpenAI
- Anthropic
- Azure OpenAI
* WIP rest of providers EXCLUDES Bedrock and GenericOpenAI
* patch untooled complete/streaming to use chatCallback provider from provider class and not assume OpenAI client struct
example: Ollama
* modify ollama to function with its own overrides
normalize completion/stream outputs across providers/untooled
* dev build
* fix message sanization for anthropic agent streaming
* wip fix anthropic agentic streaming sanitization
* patch gemini, webgenui, generic aibitat providers + disable providers unable to test
* refactor anthropic aibitat provider for empty message and tool call formatting
* Add frontend missing prop check
update Azure for streaming support
update Gemini to streamting support on gemini-* models
generic OpenAI disable streaming
verify localAI support
verify NVIDIA Nim support
* DPAIS, remove temp from call, support streaming'
* remove 0 temp to remove possibility of bad temp error/500s/400s
* Patch condition where model is non-streamable and no tools are present or called resulting in the provider `handleFunctionCallChat` being called - which returns a string.
This would then fail in Untooled.complete since response would be a string and not the expected `response.choices?.[0]?.message`
Modified this line to handle both conditions for stream/non-streaming and tool presence or lack thereof
* Allow generic Openai to be streamable since using untooled it should work fine
honor disabled streaming for provider where that concern may apply for regular chats
* rename function and more gemini-specific function to gemini provider
* add comments for readability
.complete on azure should be non-streaming as this is the sync response
* migrate CometAPI, but disable as we cannot test
---------
Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
* Fix system prompt variable color logic by removing unused variable type from switch statement and adding new types.
* Add workspace id, name and user id as default system prompt variables
* Combine user and workspace variable evaluations into a single if statment, reducing redundant code.
* minor refactor
* add systemPromptVariable expandSystemPromptVariables test cases
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* fix: resolve Firefox search icon overlapping placeholder text
- Increase input left padding from pl-4 to pl-9 to provide clearance
- Remove redundant placeholder:pl-4 class
- Ensures 24px spacing between search icon and text content
* Update SearchBox component to adjust padding on focus state
---------
Co-authored-by: neha <neha@posthog.com>
Co-authored-by: angelplusultra <macfittondev@gmail.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
Update DPAISOptions component and constants to use new OpenAI endpoint (#4432)
- Changed placeholder in DPAISOptions component to reflect updated endpoint.
- Updated DPAIS_COMMON_URLS in constants to include '/openai' in URLs.
* Enhanced Chat Embed History View
* Robust Markdown Rendering
Improved "Thinking" View
* feat: Improve markdown rendering in chat embed history
* update ui for show/hide thoughts in embed chat history
* refactor -always show thoughts if available
* patch unused imports and use safeJsonParse
* update fallback for loading state to always reset
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
* feat: Implement CometAPI integration for chat completions and model management
- Added CometApiLLM class for handling chat completions using CometAPI.
- Implemented model synchronization and caching mechanisms.
- Introduced streaming support for chat responses with timeout handling.
- Created CometApiProvider class for agent interactions with CometAPI.
- Enhanced error handling and logging throughout the integration.
- Established a structure for managing function calls and completions.
* linting
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* Update Security UI to match all other Settings
* Normalizing translations
* Running yarn lint
* Set back all the null values
* fix spacing + lint
* remap name
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* add chroma cloud as new vector db provider
* update docker example env
* extend chroma class to chroma cloud
* update readme
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* Update common.js
Improving the Romanian translation and filling in missing elements.
* linting
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* Added exa-search case to the search provider switch in web-browsing.js
* Added ExaSearchOptions component for API key input
* update
* Patch missing image crashing UI
Fix issue where ENV key did not exist or was saved on click
Update copy for provider
Add Docs for ENV keys for manual placements
update systemssettings for returning key saved to UI
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* Create parse endpoint in collector (#4212)
* create parse endpoint in collector
* revert cleanup temp util call
* lint
* remove unused cleanupTempDocuments function
* revert slug change
minor change for destinations
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* Add parsed files table and parse server endpoints (#4222)
* add workspace_parsed_files table + parse endpoints/models
* remove dev api parse endpoint
* remove unneeded imports
* iterate over all files + remove unneeded update function + update telemetry debounce
* Upload UI/UX context window check + frontend alert (#4230)
* prompt user to embed if exceeds prompt window + handle embed + handle cancel
* add tokenCountEstimate to workspace_parsed_files + optimizations
* use util for path locations + use safeJsonParse
* add modal for user decision on overflow of context window
* lint
* dynamic fetching of provider/model combo + inject parsed documents
* remove unneeded comments
* popup ui for attaching/removing files + warning to embed + wip fetching states on update
* remove prop drilling, fetch files/limits directly in attach files popup
* rework ux of FE + BE optimizations
* fix ux of FE + BE optimizations
* Implement bidirectional sync for parsed file states
linting
small changes and comments
* move parse support to another endpoint file
simplify calls and loading of records
* button borders
* enable default users to upload parsed files but NOT embed
* delete cascade on user/workspace/thread deletion to remove parsedFileRecord
* enable bgworker with "always" jobs and optional document sync jobs
orphan document job: Will find any broken reference files to prevent overpollution of the storage folder. This will run 10s after boot and every 12hr after
* change run timeout for orphan job to 1m to allow settling before spawning a worker
* linting and cleanup pr
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* dev build
* fix tooltip hiding during embedding overflow files
* prevent crash log from ERRNO on parse files
* unused import
* update docs link
* Migrate parsed-files to GET endpoint
patch logic for grabbing models names from utils
better handling for undetermined context windows (null instead of Pos_INIFI)
UI placeholder for null context windows
* patch URL
---------
Co-authored-by: Sean Hatfield <seanhatfield5@gmail.com>
* WIP on mobile connections
todo: register devices
todo: data sync or connection
* improve connection flow and registration
add streaming from service
TODO: user scoping
* dev build mobile support
* fix path
* handle relative URLs
* handle localhost access in product
* add device de-register
* sync styles
* move UI to be out of the normal path since beta only
* Add user scoping to mobile connection requests
Remigrate DB for user associations
Implement temp token registration to prevent unauthorized device registration requests
cleanup middlewares
* WIP on embedder selection
TODO: apply splitting and query prefixes (if applicable)
* wip on upsert
* Support base model
support nomic-text-embed-v1
support multilingual-e5-small
Add prefixing for both embedding and query for RAG tasks
Add chunking prefix to all vector dbs to apply prefix when possible
Show dropdown and auto-pull on new selection
* norm translations
* move supported models to constants
handle null seelction or invalid selection on dropdown
update comments
* dev
* patch text splitter maximums for now
* normalize translations
* add tests for splitter functionality
* normalize
---------
Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
* docs(zh-tw, zh-cn): Complete missing Traditional and Simplified Chinese translations
This commit aims to complete all previously 'null' Traditional Chinese and Simplified Chinese translation keys in the project.
**Traditional Chinese (zh-tw):**
- Completed all 'null' descriptions in `/frontend/src/locales/zh_TW/common.js`.
**Simplified Chinese (zh-cn):**
- Completed all 'null' descriptions in `/frontend/src/locales/zh/common.js`.
---
此提交旨在補齊專案中所有原為 'null' 的繁體中文和簡體中文翻譯鍵值。
**繁體中文翻譯 (Traditional Chinese - zh-tw):**
- 完善了 `/frontend/src/locales/zh_TW/common.js` 裡所有 'null' 的說明。
**簡體中文翻譯 (Simplified Chinese - zh-cn):**
- 完善了 `/frontend/src/locales/zh/common.js` 裡所有 'null' 的說明。
* linting
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* configurable message limit for embed widget
* remove console log
* make field optional + add fallback
* rework validation logic
* lint
* remove field specific guard, it cannot be lte 0 like all other fields
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* feat: Add Korean (ko) locale translations
- Add comprehensive Korean translations for UI elements
- Include main page features, workspace settings, and chat components
- Support Korean localization for common user interactions
* updates, lint
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* add hint for chats in query mode
* add and normalize translations
* improve semantic HTML for linking
* use existing util
* linting
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* Enable UI/UX for model swapping in chat window
* forgot component
* patch useGetProviders hook to set loading on change of provider
* dev build
* normalize translations
* patch how model default is provided
---------
Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
* implement importing of agent flows from community hub
* auto enable flow on import
* remove unused blocks for docker
prevent importing or saving of agent flows that have unsupported blocks for version or platform
* dev build
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* wip: create direct output switch on last block and send response to ui
* lint
* Return flow on direct output enabled
prevent new blocks below direct output block
Update executor/aibitat to handle skipping of handler outputs
* dev build
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* wip create skeleton for new embed chat ui/ux
* update ui for embed chats
* lint
* update sidebar/paths
* remove old embed pages
* patch broken link
* add created timestamp to differentiate embeds
update translation key to lowercase
add created at translation key
* update text colors
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* Add keyboard shortcuts help feature
* Minor lint fixes
* Enhance keyboard shortcuts feature by updating help shortcut and adding keyboard shortcuts button in Quick Links. Include new translation for keyboard shortcuts in locale.
* Added documentation of keyboard shortcuts
* refactor keyboard shortcuts to not render on every page (like login)
limit shortcuts to admins
update locales
remove keyboard shortcut button - move to resources
remove readme entry
* move translation key
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* new ui for citations
* move onclick to parent
* lint
* change div to button
* update citations UI and parsing to inherit user text size and design specs
* new render animation for citations
fix bug with citation on score on modal
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* corrected toggle server toast text
* reordered code for readability
* reordered code for readability
* ran yarn lint
* reordered code for readability
* ran yarn lint
* PGVector support for vector db storage
* forgot files
* comments
* dev build
* Add ENV connection and table schema validations for vector table
add .reset call to drop embedding table when changing the AnythingLLM embedder
update instrutions
Add preCheck error reporting in UpdateENV
add timeout to pg connection
* update setup
* update README
* update doc
* feat: implement iam role auth for bedrock
* fix: make client refreshes properly when switching between iam_user and iam_role
* checkout agent flow
* fix aiprovider for bedrock in agent use
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* Fixed two primary issues discovered while using AWS Bedrock with Anthropic Claude Sonnet models:
- Context Window defaults to 8192 maximum, which isn't correct
- Multimodal stopped working when removing langchain, which was transparently handling image_url to a format sonnet expects.
* Ran `yarn lint`
* Updated .env.example to have aws bedrock examples too
* Refactor for readability
move utils for AWS specific functionality to subfile
add token output max to ENV so setting persits
---------
Co-authored-by: Tristan Stahnke <tristan.stahnke+gpsec@guidepointsecurity.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* Update index.jsx
"Any existing instances of Bing Search APIs, with your LLM will be decommissioned completely, and the product will no longer be available for usage or new customer signups."
https://azure.microsoft.com/en-us/updates?id=483570
I checked by creating azure account myself to see it is not available. The alternative "Grounding with Bing Search" product only has one pricing available--Grounding with Bing Search ($35 per 1K transactions)
* Update index.jsx
"Any existing instances of Bing Search APIs, with your LLM will be decommissioned completely, and the product will no longer be available for usage or new customer signups."
https://azure.microsoft.com/en-us/updates?id=483570
I checked by creating azure account myself to see it is not available. The alternative "Grounding with Bing Search" product only has one pricing available--Grounding with Bing Search ($35 per 1K transactions)
* update copy
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* auto STT submit control
* simplified STT auto and TTS autoplay
* add chatId to piper elements
* change defaults
* add chat customization page for enabling/disabling new features + options on account modal
* add translation placeholders
* show keybind command
* dev build
* Account modal ui prevent page reload + show Tooltip
---------
Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
* Translate main page landing
* normalize all languages
* Add a few translations, zh,tw,ja,es,de
* fix issues where translation lang change would not effect constants until full reload instead of on update
* dev
* fix noWorkspaceError key in translation usage
* migrate hash navigation to use query params for home page
* move from url param to query param
* uncheck file
* update paths to handle search options
update action name that is used in query param
update action handlers
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* Update Azure AI options and model map with new model configurations
* linting
---------
Co-authored-by: Shinya Suzuki <shinya.s.825@gmail.com>
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* wip getting started checklist page
* lint
* add new ui skeleton for new home page/checklist
* make legacy home page appearance setting
* dynamic checklist rendering/close checklist
* make home page functional + update cta buttons in ws settings
* lint
* remove unneeded routes
* wip fixing checklist items (create ws and embed doc broken) + news section updates
* lint
* FINALLY fix all functionality & remove hook to simplify logic
* lint
* hide/show options based on user role/mum enabled
* add hover states and redo checklist ui
* remove welcome checklist page
* add validation to task completion
* polish behavior of checklist/fix roles on checklist items
* lint
* light mode/use tailwind color classes
* remove tutorials link
* Modify how legacy page works
* small UI updates
* remove unused paths
cleanup explore features
* revert save button changes
* conditionally render legacy default chat page when in multiuser
* remove role checks in checklist
* remove role checks in quick links
* remove unused hook
* dark mode new home page checklist ui updates
* Add news logging to repo for record keeping
update new module to pull from CDN
* simplify landing markup
* light mode styles
* remove border in light mode from merge conflict
* Update ignores
* slide up dismiss
* prevent checklist popin
* confetti?
* fix url hash on navigate
* watch for event changes for updating checklist
* useMemo and callback memory optimization
* move handlers to constants via params fwd
* dev
* update github text
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* WIP MCP full compatibility layer
* implement MCP agent function wrapping and invocation methods
* Add `uvx` to docker bin for MCP executions
* dev build
* prune removed data
* Wrap MCP servers to lazy load items to not block the UI
Mobile bug fixes
* arm64 test build
* reset dev builder
* remove unused prop
* added reordering of workspaces
* smooth ui updates on dnd + ui bug fixes
* pin react-beautiful-dnd version
* Move to localstorage solution to support single and multi-user
---------
Co-authored-by: Ron Metzger <ron.metzger@korn-recycling.de>
Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* changed language support for following windows: chat, data-upload and account settings
* normalize translations
* linting, normalization with DE
---------
Co-authored-by: Ron Metzger <ron.metzger@korn-recycling.de>
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* feat: add new model provider PPIO
* fix: fix ppio model fetching
* fix: code lint
* reorder LLM
update interface for streaming and chats to use valid keys
linting
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>
* Windows development environment variables support
* moved cross-env to dev dependencies
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* add bio to users table
* lint
* add bio field to edit user admin page
* fix bio saving on new user
* simplify updating localstorage user
* linting
---------
Co-authored-by: timothycarambat <rambat1010@gmail.com>