-
Notifications
You must be signed in to change notification settings - Fork 416
coral-web: update first turn suggestions #225
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
wujessica
commented
Jun 17, 2024
knajjars
reviewed
Jun 18, 2024
src/interfaces/coral_web/src/components/Conversation/MessagingContainer.tsx
Outdated
Show resolved
Hide resolved
knajjars
reviewed
Jun 18, 2024
src/interfaces/coral_web/src/components/Conversation/MessagingContainer.tsx
Outdated
Show resolved
Hide resolved
knajjars
reviewed
Jun 18, 2024
src/interfaces/coral_web/src/components/FirstTurnSuggestions.tsx
Outdated
Show resolved
Hide resolved
knajjars
reviewed
Jun 18, 2024
src/interfaces/coral_web/src/components/FirstTurnSuggestions.tsx
Outdated
Show resolved
Hide resolved
knajjars
reviewed
Jun 18, 2024
knajjars
approved these changes
Jun 18, 2024
c303f9f
to
6887510
Compare
sanal-cohere
pushed a commit
that referenced
this pull request
Jun 21, 2024
sanal-cohere
added a commit
that referenced
this pull request
Jun 21, 2024
* Initial commit for Compass Tool * coral-web: update first turn suggestions (#225) * Addressed comments on the previous commit * Added custom_context to parse and filters to search * Formatting changes * feat(assistant): Update conversation header (#229) * feat(assistant): Update conversation header * feat(assistant): Update conversation header * update tooltip * fix IconButton import * Setup: fix dependencies (#243) * feat(toolkit): show conversation list on with agents list (#231) * Setup: remove redundant dependency (#244) * Improve Auth guide (#235) improve auth guide * coral-web: create agent + agent base form (#212) * create new agent form * render agents list * link back to base agent page * perform post submission actions * move input labels outside of input borders * move submit button * gen client * factor out agent base form * use default content type * list custom agents * check if agent name is unique * and deployment + env variables to agent form * add deployments * clean up * add submit modal * push to new agent page on create success * only show available deployments * remove deployments dropdown * feat: List Assistants returned from API (#242) * feat: list agents from BE * Update src/interfaces/coral_web/src/components/Conversation/MessagingContainer.tsx Co-authored-by: misspia-cohere <[email protected]> --------- Co-authored-by: misspia-cohere <[email protected]> * nits --------- Co-authored-by: Khalil Najjar <[email protected]> * Propagate should_store logic to the File upload logic (#247) should_store logic to the attach_files_to_messages * [backend] passing in agent when calling streaming chat (#237) * initial chat changes * need to test * done * Remove old test * default model for agents right now * Organizations DB models, CRUD and tests (#238) * Organizations initial commit * Organizations initial commit * Organizations initial commit - sync main * Organizations initial commit - sync main - blacked * Organizations initial commit - sync main - lint * Organizations initial commit - sync main - tests * Organizations initial commit - sync main - tests * Organizations initial commit - review fixes * Organizations initial commit - review fixes * Split up display name and name for Tools (#241) * CHange * change * coral-web: update assistant (#248) * create new agent form * render agents list * link back to base agent page * perform post submission actions * move input labels outside of input borders * move submit button * gen client * factor out agent base form * check if agent name is unique * and deployment + env variables to agent form * add deployments * clean up * remove deployments dropdown * init agent page * create agent drawer * use agent form * add update agent request * add get agent request * fix rebase errors * remove model from agent form * add agent drawer to conversation * remove unused componenets * use new agent name for update success message * fix(toolkit): Address code feedback + improvements (#249) address code feedback improvements --------- Co-authored-by: Khalil Najjar <[email protected]> * feat(toolkit): add/remove recently used agents (#250) * feat(toolkit): add/remove recently used agents * merge main * Add a walkthrough guide of the toolkit (#251) * GUide * Chang * Change * Change * Update docs/walkthrough/walkthrough.md Co-authored-by: Luísa Moura <[email protected]> * Update walkthrough.md --------- Co-authored-by: Luísa Moura <[email protected]> * coral-web: fix agent info panel opening by default (#253) cast isEditAgentPanelOpen to boolean * [backend] enforce agent update with user-id (#246) * updates * remove client changes * remove logs * use better header user id check * fix validators * typo * Metrics: add middleware (#185) * Metrics: add middleware * add chat calls * merge * lint * make it async * add user id * add more fields * add retry and duration * add meta * comments * fix tests * improve error handling * rename fields * match spec * comments * clean code * only create loop when theres endpoint * add assistant id to chat * feat(toolkit): show assistant welcome message (#255) * feat(toolkit): show assistant welcome message * feat(toolkit): show assistant welcome message * frontend: Login, logout, and account creation (#179) * add login page components * Add Register page and hooks for auth * Add the register page and connect all the frontend elements * Redirect to /login if the token expires and clean up some console errors * Add error messages for failed logins * frontend: Add Single Sign-on to Toolkit (#227) * Add Google SSO login plus OpenID components * Dynamically set SSO login buttons and show or hide username and password based on auth_strategies --------- Co-authored-by: Tianjing Li <[email protected]> * fix startup event * Fix build errors and update the API client * Fix tests by adding missing env vars Add test OIDC_WELL_KNOWN_ENDPOINT var to fixtures * Add a walkthrough guide of the toolkit (#251) * GUide * Chang * Change * Change * Update docs/walkthrough/walkthrough.md Co-authored-by: Luísa Moura <[email protected]> * Update walkthrough.md --------- Co-authored-by: Luísa Moura <[email protected]> * coral-web: fix agent info panel opening by default (#253) cast isEditAgentPanelOpen to boolean * [backend] enforce agent update with user-id (#246) * updates * remove client changes * remove logs * use better header user id check * fix validators * typo * Metrics: add middleware (#185) * Metrics: add middleware * add chat calls * merge * lint * make it async * add user id * add more fields * add retry and duration * add meta * comments * fix tests * improve error handling * rename fields * match spec * comments * clean code * only create loop when theres endpoint * add assistant id to chat * feat(toolkit): show assistant welcome message (#255) * feat(toolkit): show assistant welcome message * feat(toolkit): show assistant welcome message --------- Co-authored-by: misspia-cohere <[email protected]> Co-authored-by: Tianjing Li <[email protected]> Co-authored-by: Beatrix De Wilde <[email protected]> Co-authored-by: Luísa Moura <[email protected]> Co-authored-by: misspia-cohere <[email protected]> Co-authored-by: Scott <[email protected]> Co-authored-by: Khalil Najjar <[email protected]> * fix(toolkit): UX/UI improvements (#257) * Add error troubleshooting (#262) * Update chat.py --------- Co-authored-by: Jessica Wu <[email protected]> Co-authored-by: Khalil Najjar <[email protected]> Co-authored-by: Luísa Moura <[email protected]> Co-authored-by: Tomeu <[email protected]> Co-authored-by: Tianjing Li <[email protected]> Co-authored-by: misspia-cohere <[email protected]> Co-authored-by: Eugene P <[email protected]> Co-authored-by: Scott <[email protected]> Co-authored-by: Beatrix De Wilde <[email protected]> Co-authored-by: Alex W <[email protected]> Co-authored-by: misspia-cohere <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description:
This PR adds in the new first turn suggestion design and prompts. It filters out prompts that use tools when all the tools it needs are not available.
Secondly, it fixes some behaviours to do with navigating between conversations and carrying over tools and files by properly resetting them. Specifically, between existing conversations and new conversations, we should always be resetting
fileIds
state since files are tied to conversations.tools
should be reset between existing conversations since we do not currently save our last used tools in the conversation history so persisting them would be inaccurate and confusing BUTtools
may be persisted across navigating from an existing conversation to a new one for convenience.Untitled.mov
Screen.Recording.2024-06-17.at.3.27.42.PM.mov
AI Description
This PR makes changes to the Coral Web interface, specifically to the Avatar, CitationDocument, Files, Tools, Composer, ComposerError, ComposerFiles, ComposerToolbar, DragDropFileUploadOverlay, EnabledDataSources, ConversationListHeader, FileError, FirstTurnSuggestions, IconButton, MessageContent, MessageFile, StartModes, UploadedFile, and UploadingFile components.
BotAvatar
as a React component.toLowerCase()
method from thetoolId
prop in theCitationDocumentHeader
andCitationDocumentSnippet
components.Checkbox
anduseDefaultFileLoaderTool
from'@/components/Shared'
and'@/hooks/files'
, respectively.setParams
andcomposerFiles
to the destructured object fromuseParamsStore
.deleteComposerFile
to the destructured object fromuseFilesStore
.handleToggle
function, which updates thefileIds
state based on the providedfileId
.onToolToggle
function tohandleToolToggle
.handleToolToggle
function to use the newhandleToggle
function name.React
,FileError
,useFilesStore
, andcn
from'react'
,'@/components/FileError'
,'@/stores'
, and'@/utils'
, respectively.ComposerError
as a React component that renders an error message for file upload errors.React
,MessageFile
,useFilesStore
, andcn
from'react'
,'@/components/MessageFile'
,'@/stores'
, and'@/utils'
, respectively.ComposerFiles
as a React component that displays files prepared for upload with the next chat request.React
,useRef
,EnabledDataSources
,IconButton
,IconName
,ACCEPTED_FILE_TYPES
, andcn
from'react'
,'@/components/IconButton'
,'@/components/Shared'
,'@/constants'
, and'@/utils'
, respectively.ComposerToolbar
as a React component that includes a file input field, a toolbar action button, and enabled data sources.React
,DragDropFileInput
,ACCEPTED_FILE_TYPES
,useFocusFileInput
,useSettingsStore
, andcn
from'react'
,'@/components/Shared'
,'@/constants'
,'@/hooks/actions'
,'@/stores'
, and'@/utils'
, respectively.DragDropFileUploadOverlay
as a React component that handles file uploads via drag and drop.React
,Icon
,IconName
,Text
,useDefaultFileLoaderTool
,useListFiles
,useConversationStore
,useFilesStore
,useParamsStore
,ConfigurableParams
, andcn
from'react'
,'@/components/Shared'
,'@/constants'
,'@/hooks/files'
,'@/stores'
,'@/stores/slices/paramsSlice'
, and'@/utils'
, respectively.EnabledDataSources
as a React component that renders enabled data sources in the composer toolbar.useCitationsStore
,useConversationStore
, anduseSettingsStore
imports to also includeuseParamsStore
.React
,useMemo
,Text
, andcn
from'react'
,'@/components/Shared'
, and'@/utils'
, respectively.FileError
as a React component that renders an error message for file upload issues.React
,useMemo
,Transition
,ButtonGroup
,TOOL_CALCULATOR_ID
,TOOL_INTERNET_SEARCH_ID
,TOOL_PYTHON_INTERPRETER_ID
,useListTools
,useParamsStore
,ConfigurableParams
, andcn
from'react'
,'@headlessui/react'
,'@/components/ButtonGroup'
,'@/constants'
,'@/hooks/tools'
,'@/stores/slices/paramsSlice'
, and'@/utils'
, respectively.FirstTurnSuggestions
as a React component that displays clickable suggestions for the user's first turn in the conversation.React
,BasicButton
,Icon
,IconName
, andcn
imports to also includeTarget
,Text
,Tooltip
, andcx
from'react'
,'@/components/Shared'
, and'classnames'
, respectively.Props
interface to include an optionaltooltipLabel
and asize
with a default value of `'md'.IconButton
component to include an optionaltooltipLabel
prop and to usecx
for class name generation.iconButton
element in aTooltip
component when atooltipLabel
is provided.UploadedFile
component toMessageFile
.React
,Icon
,Skeleton
,Text
,cn
,getFileExtension
, andformatFileSize
from'react'
,'@/components/Shared'
, and'@/utils'
, respectively.MessageFile
as a React component that renders a file card in a chat message or composer.