From f9f48109c27c2d9f7714b648f653fd8675460626 Mon Sep 17 00:00:00 2001 From: n4ze3m Date: Sat, 25 May 2024 11:39:05 +0530 Subject: [PATCH] feat: Add react-speech-recognition for speech-to-text functionality in SidepanelForm --- bun.lockb | Bin 412090 -> 413346 bytes package.json | 2 + .../Option/Playground/PlaygroundForm.tsx | 70 +++++++++++------- src/components/Sidepanel/Chat/form.tsx | 69 ++++++++++------- 4 files changed, 90 insertions(+), 51 deletions(-) diff --git a/bun.lockb b/bun.lockb index 52cde83b1fbe06a48230c620b1ea9a1e8ed54d69..c793ee5104eb39b56f57b6fc3e1c5d3df6d0914c 100644 GIT binary patch delta 75111 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 delta 74365 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 diff --git a/package.json b/package.json index b05f5dd..9832ab4 100644 --- a/package.json +++ b/package.json @@ -46,6 +46,7 @@ "react-i18next": "^14.1.0", "react-markdown": "8.0.0", "react-router-dom": "6.10.0", + "react-speech-recognition": "^3.10.0", "react-syntax-highlighter": "^15.5.0", "react-toastify": "^10.0.4", "rehype-mathjax": "4.0.3", @@ -64,6 +65,7 @@ "@types/pubsub-js": "^1.8.6", "@types/react": "18.2.48", "@types/react-dom": "18.2.18", + "@types/react-speech-recognition": "^3.9.5", "@types/react-syntax-highlighter": "^15.5.11", "@types/turndown": "^5.0.4", "autoprefixer": "^10.4.17", diff --git a/src/components/Option/Playground/PlaygroundForm.tsx b/src/components/Option/Playground/PlaygroundForm.tsx index a694149..f4a6502 100644 --- a/src/components/Option/Playground/PlaygroundForm.tsx +++ b/src/components/Option/Playground/PlaygroundForm.tsx @@ -6,14 +6,14 @@ import { toBase64 } from "~/libs/to-base64" import { useMessageOption } from "~/hooks/useMessageOption" import { Checkbox, Dropdown, Select, Switch, Tooltip } from "antd" import { Image } from "antd" -import { useSpeechRecognition } from "~/hooks/useSpeechRecognition" import { useWebUI } from "~/store/webui" import { defaultEmbeddingModelForRag } from "~/services/ollama" import { ImageIcon, MicIcon, StopCircleIcon, X } from "lucide-react" import { getVariable } from "~/utils/select-varaible" import { useTranslation } from "react-i18next" import { KnowledgeSelect } from "../Knowledge/KnowledgeSelect" -import { SelectedKnowledge } from "../Knowledge/SelectedKnwledge" +import { useSpeechRecognition } from "react-speech-recognition" +import SpeechRecognition from "react-speech-recognition" type Props = { dropedFile: File | undefined @@ -84,7 +84,13 @@ export const PlaygroundForm = ({ dropedFile }: Props) => { useDynamicTextareaSize(textareaRef, form.values.message, 300) - const { isListening, start, stop, transcript } = useSpeechRecognition() + const { + transcript, + listening: isListening, + resetTranscript, + browserSupportsSpeechRecognition + } = useSpeechRecognition() + const { sendWhenEnter, setSendWhenEnter } = useWebUI() React.useEffect(() => { @@ -135,6 +141,7 @@ export const PlaygroundForm = ({ dropedFile }: Props) => { sendWhenEnter ) { e.preventDefault() + stopListening() form.onSubmit(async (value) => { if (value.message.trim().length === 0) { return @@ -159,6 +166,13 @@ export const PlaygroundForm = ({ dropedFile }: Props) => { })() } } + + const stopListening = async () => { + if (isListening) { + SpeechRecognition.stopListening() + } + } + return (

{
{ + stopListening() if (!selectedModel || selectedModel.length === 0) { form.setFieldError("message", t("formError.noModel")) return @@ -260,30 +275,33 @@ export const PlaygroundForm = ({ dropedFile }: Props) => {
- -
- )} - - + ) : ( +
+ + +
+ )} + + + )} {!selectedKnowledge && ( diff --git a/src/components/Sidepanel/Chat/form.tsx b/src/components/Sidepanel/Chat/form.tsx index 148ebfd..34ff31e 100644 --- a/src/components/Sidepanel/Chat/form.tsx +++ b/src/components/Sidepanel/Chat/form.tsx @@ -5,12 +5,13 @@ import useDynamicTextareaSize from "~/hooks/useDynamicTextareaSize" import { useMessage } from "~/hooks/useMessage" import { toBase64 } from "~/libs/to-base64" import { Checkbox, Dropdown, Image, Tooltip } from "antd" -import { useSpeechRecognition } from "~/hooks/useSpeechRecognition" import { useWebUI } from "~/store/webui" import { defaultEmbeddingModelForRag } from "~/services/ollama" import { ImageIcon, MicIcon, StopCircleIcon, X } from "lucide-react" import { useTranslation } from "react-i18next" import { ModelSelect } from "@/components/Common/ModelSelect" +import { useSpeechRecognition } from "react-speech-recognition" +import SpeechRecognition from "react-speech-recognition" type Props = { dropedFile: File | undefined @@ -29,6 +30,20 @@ export const SidepanelForm = ({ dropedFile }: Props) => { image: "" } }) + const { + transcript, + listening: isListening, + resetTranscript, + browserSupportsSpeechRecognition + } = useSpeechRecognition({ + + }) + + const stopListening = async () => { + if (isListening) { + SpeechRecognition.stopListening() + } + } const onInputChange = async ( e: React.ChangeEvent | File @@ -59,6 +74,7 @@ export const SidepanelForm = ({ dropedFile }: Props) => { ) { e.preventDefault() form.onSubmit(async (value) => { + await stopListening() if (value.message.trim().length === 0) { return } @@ -98,7 +114,6 @@ export const SidepanelForm = ({ dropedFile }: Props) => { streaming, setChatMode } = useMessage() - const { isListening, start, stop, transcript } = useSpeechRecognition() React.useEffect(() => { if (dropedFile) { @@ -161,6 +176,7 @@ export const SidepanelForm = ({ dropedFile }: Props) => { return } } + await stopListening() form.reset() textAreaFocus() await sendMessage({ @@ -196,30 +212,33 @@ export const SidepanelForm = ({ dropedFile }: Props) => { />
- -
- )} - -
+ ) : ( +
+ + +
+ )} + + + )}