From 3f733a302b3ca4e4f8e6cee6021953a29168f8cd Mon Sep 17 00:00:00 2001 From: yhjun1026 <460342015@qq.com> Date: Fri, 21 Jul 2023 18:21:39 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=B8=85=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- datacenter/.eslintrc.json | 3 - datacenter/.gitignore | 35 - datacenter/README.md | 34 - datacenter/app/agents/layout.tsx | 13 - datacenter/app/agents/page.tsx | 214 - datacenter/app/chat/page.tsx | 50 - datacenter/app/context/dialogue.tsx | 37 - .../datastores/documents/chunklist/page.tsx | 173 - datacenter/app/datastores/documents/page.tsx | 602 - datacenter/app/datastores/page.tsx | 601 - datacenter/app/favicon.ico | Bin 25931 -> 0 bytes datacenter/app/globals.css | 34 - datacenter/app/layout.tsx | 70 - datacenter/app/page.tsx | 122 - datacenter/components/chatBox.tsx | 267 - datacenter/components/chatBoxTemp.tsx | 253 - datacenter/components/colorSchemeToggle.tsx | 32 - datacenter/components/header.tsx | 43 - datacenter/components/leftSider.tsx | 255 - datacenter/components/topProgressBar.tsx | 61 - datacenter/defaultTheme.ts | 73 - datacenter/hooks/useAgentChat.ts | 170 - datacenter/hooks/useNewChat.ts | 10 - datacenter/hooks/useStateReducer.ts | 17 - datacenter/hooks/useVisitorId.ts | 28 - datacenter/lib/mui.tsx | 3 - datacenter/next.config.js | 16 - datacenter/nprogress.css | 32 - datacenter/package-lock.json | 14907 ---------------- datacenter/package.json | 62 - datacenter/postcss.config.js | 6 - datacenter/public/bg1.avif | Bin 77726 -> 0 bytes datacenter/public/bg2.png | Bin 202104 -> 0 bytes datacenter/tailwind.config.js | 19 - datacenter/tsconfig.json | 28 - datacenter/types/index.ts | 16 - datacenter/utils/api-error.ts | 40 - datacenter/utils/ctx-axios.ts | 14 - datacenter/utils/ctx-helper.ts | 15 - datacenter/utils/request.ts | 85 - datacenter/utils/swr-fetcher.ts | 19 - pilot/xx.db | Bin 12288 -> 0 bytes 42 files changed, 18459 deletions(-) delete mode 100644 datacenter/.eslintrc.json delete mode 100644 datacenter/.gitignore delete mode 100644 datacenter/README.md delete mode 100644 datacenter/app/agents/layout.tsx delete mode 100644 datacenter/app/agents/page.tsx delete mode 100644 datacenter/app/chat/page.tsx delete mode 100644 datacenter/app/context/dialogue.tsx delete mode 100644 datacenter/app/datastores/documents/chunklist/page.tsx delete mode 100644 datacenter/app/datastores/documents/page.tsx delete mode 100644 datacenter/app/datastores/page.tsx delete mode 100644 datacenter/app/favicon.ico delete mode 100644 datacenter/app/globals.css delete mode 100644 datacenter/app/layout.tsx delete mode 100644 datacenter/app/page.tsx delete mode 100644 datacenter/components/chatBox.tsx delete mode 100644 datacenter/components/chatBoxTemp.tsx delete mode 100644 datacenter/components/colorSchemeToggle.tsx delete mode 100644 datacenter/components/header.tsx delete mode 100644 datacenter/components/leftSider.tsx delete mode 100644 datacenter/components/topProgressBar.tsx delete mode 100644 datacenter/defaultTheme.ts delete mode 100644 datacenter/hooks/useAgentChat.ts delete mode 100644 datacenter/hooks/useNewChat.ts delete mode 100644 datacenter/hooks/useStateReducer.ts delete mode 100644 datacenter/hooks/useVisitorId.ts delete mode 100644 datacenter/lib/mui.tsx delete mode 100644 datacenter/next.config.js delete mode 100644 datacenter/nprogress.css delete mode 100644 datacenter/package-lock.json delete mode 100644 datacenter/package.json delete mode 100644 datacenter/postcss.config.js delete mode 100644 datacenter/public/bg1.avif delete mode 100644 datacenter/public/bg2.png delete mode 100644 datacenter/tailwind.config.js delete mode 100644 datacenter/tsconfig.json delete mode 100644 datacenter/types/index.ts delete mode 100644 datacenter/utils/api-error.ts delete mode 100644 datacenter/utils/ctx-axios.ts delete mode 100644 datacenter/utils/ctx-helper.ts delete mode 100644 datacenter/utils/request.ts delete mode 100644 datacenter/utils/swr-fetcher.ts delete mode 100644 pilot/xx.db diff --git a/datacenter/.eslintrc.json b/datacenter/.eslintrc.json deleted file mode 100644 index bffb357a7..000000000 --- a/datacenter/.eslintrc.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "next/core-web-vitals" -} diff --git a/datacenter/.gitignore b/datacenter/.gitignore deleted file mode 100644 index 90a819b9c..000000000 --- a/datacenter/.gitignore +++ /dev/null @@ -1,35 +0,0 @@ -# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. - -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* - -# local env files -.env.prod - -# vercel -.vercel - -# typescript -*.tsbuildinfo -next-env.d.ts diff --git a/datacenter/README.md b/datacenter/README.md deleted file mode 100644 index f4da3c4c1..000000000 --- a/datacenter/README.md +++ /dev/null @@ -1,34 +0,0 @@ -This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app). - -## Getting Started - -First, run the development server: - -```bash -npm run dev -# or -yarn dev -# or -pnpm dev -``` - -Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. - -You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. - -This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font. - -## Learn More - -To learn more about Next.js, take a look at the following resources: - -- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. -- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. - -You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome! - -## Deploy on Vercel - -The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. - -Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. diff --git a/datacenter/app/agents/layout.tsx b/datacenter/app/agents/layout.tsx deleted file mode 100644 index 8c94ab351..000000000 --- a/datacenter/app/agents/layout.tsx +++ /dev/null @@ -1,13 +0,0 @@ -import { Box } from '@/lib/mui'; - -export default function RootLayout({ - children, -}: { - children: React.ReactNode -}) { - return ( - <> - {children} - - ) -} diff --git a/datacenter/app/agents/page.tsx b/datacenter/app/agents/page.tsx deleted file mode 100644 index 3dcd8462e..000000000 --- a/datacenter/app/agents/page.tsx +++ /dev/null @@ -1,214 +0,0 @@ -"use client" -import ChatBoxComp from '@/components/chatBox'; -import { Chart, LineAdvance, Interval, Tooltip, getTheme } from 'bizcharts'; -import { Card, CardContent, Typography, Grid, styled, Sheet } from '@/lib/mui'; -import { Stack } from '@mui/material'; -import useAgentChat from '@/hooks/useAgentChat'; - - -const Item = styled(Sheet)(({ theme }) => ({ - ...theme.typography.body2, - padding: theme.spacing(1), - textAlign: 'center', - borderRadius: 4, - color: theme.vars.palette.text.secondary, -})); - -const Agents = () => { - const { handleChatSubmit, history } = useAgentChat({ - queryAgentURL: `/v1/chat/completions`, - }); - - const data = [ - { - month: "Jan", - city: "Tokyo", - temperature: 7 - }, - { - month: "Feb", - city: "Tokyo", - temperature: 13 - }, - { - month: "Mar", - city: "Tokyo", - temperature: 16.5 - }, - { - month: "Apr", - city: "Tokyo", - temperature: 14.5 - }, - { - month: "May", - city: "Tokyo", - temperature: 10 - }, - { - month: "Jun", - city: "Tokyo", - temperature: 7.5 - }, - { - month: "Jul", - city: "Tokyo", - temperature: 9.2 - }, - { - month: "Aug", - city: "Tokyo", - temperature: 14.5 - }, - { - month: "Sep", - city: "Tokyo", - temperature: 9.3 - }, - { - month: "Oct", - city: "Tokyo", - temperature: 8.3 - }, - { - month: "Nov", - city: "Tokyo", - temperature: 8.9 - }, - { - month: "Dec", - city: "Tokyo", - temperature: 5.6 - }, - ]; - - const d1 = [ - { year: '1951 年', sales: 0 }, - { year: '1952 年', sales: 52 }, - { year: '1956 年', sales: 61 }, - { year: '1957 年', sales: 45 }, - { year: '1958 年', sales: 48 }, - { year: '1959 年', sales: 38 }, - { year: '1960 年', sales: 38 }, - { year: '1962 年', sales: 38 }, - ]; - - const topCard = [{ - label: 'Revenue Won', - value: '$7,811,851' - }, { - label: 'Close %', - value: '37.7%' - }, { - label: 'AVG Days to Close', - value: '121' - }, { - label: 'Opportunities Won', - value: '526' - }]; - - return ( -
-
- - - - - - {topCard.map((item) => ( - - - - - {item.label} - - - {item.value} - - - - - ))} - - - - - - - Revenue Won by Month - -
- - - -
-
-
-
- - - - - - - Close % by Month - -
- - - - -
-
-
-
- - - - - Close % by Month - -
- - - - -
-
-
-
- - - - - Close % by Month - -
- - - - -
-
-
-
-
-
-
-
- - - -
-
-
- ) -} - -export default Agents; \ No newline at end of file diff --git a/datacenter/app/chat/page.tsx b/datacenter/app/chat/page.tsx deleted file mode 100644 index 529b56efa..000000000 --- a/datacenter/app/chat/page.tsx +++ /dev/null @@ -1,50 +0,0 @@ -"use client" -import { useRequest } from 'ahooks'; -import { sendGetRequest, sendPostRequest } from '@/utils/request'; -import useAgentChat from '@/hooks/useAgentChat'; -import ChatBoxComp from '@/components/chatBoxTemp'; -import { useDialogueContext } from '@/app/context/dialogue'; -import { useSearchParams } from 'next/navigation'; - -const AgentPage = () => { - const searchParams = useSearchParams(); - const { refreshDialogList } = useDialogueContext(); - const id = searchParams.get('id'); - const scene = searchParams.get('scene'); - - const { data: historyList } = useRequest(async () => await sendGetRequest('/v1/chat/dialogue/messages/history', { - con_uid: id - }), { - ready: !!id, - refreshDeps: [id] - }); - - const { data: paramsList } = useRequest(async () => await sendPostRequest(`/v1/chat/mode/params/list?chat_mode=${scene}`), { - ready: !!scene, - refreshDeps: [id, scene] - }); - - const { history, handleChatSubmit } = useAgentChat({ - queryAgentURL: `/v1/chat/completions`, - queryBody: { - conv_uid: id, - chat_mode: scene || 'chat_normal', - }, - initHistory: historyList?.data - }); - - return ( - <> - { - await refreshDialogList(); - }} - messages={history || []} - onSubmit={handleChatSubmit} - paramsList={paramsList?.data} - /> - - ) -} - -export default AgentPage; \ No newline at end of file diff --git a/datacenter/app/context/dialogue.tsx b/datacenter/app/context/dialogue.tsx deleted file mode 100644 index 8629ff403..000000000 --- a/datacenter/app/context/dialogue.tsx +++ /dev/null @@ -1,37 +0,0 @@ -import { useRequest } from 'ahooks'; -import { sendGetRequest } from '@/utils/request'; -import { createCtx } from '@/utils/ctx-helper'; -import { AxiosResponse } from 'axios'; -import React from 'react'; - -export const [useDialogueContext, DialogueProvider] = createCtx<{ - dialogueList?: void | AxiosResponse | undefined; - queryDialogueList: () => void; - refreshDialogList: () => void; -}>(); - -const DialogueContext = ({ children }: { - children: React.ReactElement -}) => { - const { - run: queryDialogueList, - data: dialogueList, - refresh: refreshDialogList, - } = useRequest(async () => await sendGetRequest('/v1/chat/dialogue/list'), { - manual: true, - }); - - return ( - - {children} - - ) -} - -export default DialogueContext; \ No newline at end of file diff --git a/datacenter/app/datastores/documents/chunklist/page.tsx b/datacenter/app/datastores/documents/chunklist/page.tsx deleted file mode 100644 index 65e2e7c5b..000000000 --- a/datacenter/app/datastores/documents/chunklist/page.tsx +++ /dev/null @@ -1,173 +0,0 @@ -'use client' - -import { useSearchParams, useRouter } from 'next/navigation' -import React, { useState, useEffect } from 'react' -import { - useColorScheme, - Table, - Stack, - Typography, - Breadcrumbs, - Link -} from '@/lib/mui' -import { Popover, Pagination } from 'antd' -import { sendSpacePostRequest } from '@/utils/request' -const page_size = 20 - -const ChunkList = () => { - const router = useRouter() - const { mode } = useColorScheme() - const spaceName = useSearchParams().get('spacename') - const documentId = useSearchParams().get('documentid') - const [total, setTotal] = useState(0) - const [current, setCurrent] = useState(0) - const [chunkList, setChunkList] = useState([]) - useEffect(() => { - async function fetchChunks() { - const data = await sendSpacePostRequest( - `/knowledge/${spaceName}/chunk/list`, - { - document_id: documentId, - page: 1, - page_size - } - ) - if (data.success) { - setChunkList(data.data.data) - setTotal(data.data.total) - setCurrent(data.data.page) - } - } - fetchChunks() - }, []) - return ( -
- - - { - router.push('/datastores') - }} - key="Knowledge Space" - underline="hover" - color="neutral" - fontSize="inherit" - > - Knowledge Space - - { - router.push(`/datastores/documents?name=${spaceName}`) - }} - key="Knowledge Space" - underline="hover" - color="neutral" - fontSize="inherit" - > - Documents - - Chunks - - -
- {chunkList.length ? ( - <> - - - - - - - - - - {chunkList.map((row: any) => ( - - - - - - ))} - -
NameContentMeta Data
{row.doc_name} - { - - {row.content.length > 10 - ? `${row.content.slice(0, 10)}...` - : row.content} - - } - - { - - {row.meta_info.length > 10 - ? `${row.meta_info.slice(0, 10)}...` - : row.meta_info} - - } -
- - { - const data = await sendSpacePostRequest( - `/knowledge/${spaceName}/chunk/list`, - { - document_id: documentId, - page, - page_size - } - ) - if (data.success) { - setChunkList(data.data.data) - setTotal(data.data.total) - setCurrent(data.data.page) - } - }} - hideOnSinglePage - /> - - - ) : ( - <> - )} -
-
- ) -} - -export default ChunkList diff --git a/datacenter/app/datastores/documents/page.tsx b/datacenter/app/datastores/documents/page.tsx deleted file mode 100644 index 374914531..000000000 --- a/datacenter/app/datastores/documents/page.tsx +++ /dev/null @@ -1,602 +0,0 @@ -'use client' - -import { useRouter, useSearchParams } from 'next/navigation' -import React, { useState, useEffect } from 'react' -import { - useColorScheme, - Button, - Table, - Sheet, - Modal, - Box, - Stack, - Input, - Textarea, - Chip, - Switch, - Typography, - Breadcrumbs, - Link, - styled -} from '@/lib/mui' -import moment from 'moment' -import { InboxOutlined } from '@ant-design/icons' -import CheckCircleOutlinedIcon from '@mui/icons-material/CheckCircleOutlined' -import CachedIcon from '@mui/icons-material/Cached' -import type { UploadProps } from 'antd' -import { Upload, Pagination, Popover, message } from 'antd' -import { - sendSpacePostRequest, - sendSpaceUploadPostRequest -} from '@/utils/request' - -const { Dragger } = Upload -const Item = styled(Sheet)(({ theme }) => ({ - width: '50%', - backgroundColor: - theme.palette.mode === 'dark' ? theme.palette.background.level1 : '#fff', - ...theme.typography.body2, - padding: theme.spacing(1), - textAlign: 'center', - borderRadius: 4, - color: theme.vars.palette.text.secondary -})) -const stepsOfAddingDocument = [ - 'Choose a Datasource type', - 'Setup the Datasource' -] -const documentTypeList = [ - { - type: 'text', - title: 'Text', - subTitle: 'Fill your raw text' - }, - { - type: 'webPage', - title: 'URL', - subTitle: 'Fetch the content of a URL' - }, - { - type: 'file', - title: 'Document', - subTitle: - 'Upload a document, document type can be PDF, CSV, Text, PowerPoint, Word, Markdown' - } -] -const page_size = 20 - -const Documents = () => { - const router = useRouter() - const spaceName = useSearchParams().get('name') - const { mode } = useColorScheme() - const [isAddDocumentModalShow, setIsAddDocumentModalShow] = - useState(false) - const [activeStep, setActiveStep] = useState(0) - const [documentType, setDocumentType] = useState('') - const [documents, setDocuments] = useState([]) - const [webPageUrl, setWebPageUrl] = useState('') - const [documentName, setDocumentName] = useState('') - const [textSource, setTextSource] = useState('') - const [text, setText] = useState('') - const [originFileObj, setOriginFileObj] = useState(null) - const [total, setTotal] = useState(0) - const [current, setCurrent] = useState(0) - const [synchChecked, setSynchChecked] = useState(true) - const props: UploadProps = { - name: 'file', - multiple: false, - onChange(info) { - console.log(info) - if (info.fileList.length === 0) { - setOriginFileObj(null) - setDocumentName('') - return - } - setOriginFileObj(info.file.originFileObj) - setDocumentName(info.file.originFileObj?.name) - } - } - useEffect(() => { - async function fetchDocuments() { - const data = await sendSpacePostRequest( - `/knowledge/${spaceName}/document/list`, - { - page: 1, - page_size - } - ) - if (data.success) { - setDocuments(data.data.data) - setTotal(data.data.total) - setCurrent(data.data.page) - } - } - fetchDocuments() - }, []) - return ( -
- - - { - router.push('/datastores') - }} - key="Knowledge Space" - underline="hover" - color="neutral" - fontSize="inherit" - > - Knowledge Space - - Documents - - - - {documents.length ? ( - <> - - - - - - - - - - - - - - {documents.map((row: any) => ( - - - - - - - - - - ))} - -
NameTypeSizeLast SynchStatusResultOperation
{row.doc_name} - - {row.doc_type} - - {row.chunk_size} chunks{moment(row.last_sync).format('YYYY-MM-DD HH:MM:SS')} - - {row.status} - - - {(function () { - if (row.status === 'TODO' || row.status === 'RUNNING') { - return '' - } else if (row.status === 'FINISHED') { - return ( - - - SUCCESS - - - ) - } else { - return ( - - - FAILED - - - ) - } - })()} - - { - <> - - - - } -
- - { - const data = await sendSpacePostRequest( - `/knowledge/${spaceName}/document/list`, - { - page, - page_size - } - ) - if (data.success) { - setDocuments(data.data.data) - setTotal(data.data.total) - setCurrent(data.data.page) - } - }} - hideOnSinglePage - /> - - - ) : ( - <> - )} - setIsAddDocumentModalShow(false)} - > - - - - {stepsOfAddingDocument.map((item: any, index: number) => ( - - {index < activeStep ? ( - - ) : ( - `${index + 1}.` - )} - {`${item}`} - - ))} - - - {activeStep === 0 ? ( - <> - - {documentTypeList.map((item: any) => ( - { - setDocumentType(item.type) - setActiveStep(1) - }} - > - - {item.title} - - {item.subTitle} - - ))} - - - ) : ( - <> - - Name: - setDocumentName(e.target.value)} - sx={{ marginBottom: '20px' }} - /> - {documentType === 'webPage' ? ( - <> - Web Page URL: - setWebPageUrl(e.target.value)} - /> - - ) : documentType === 'file' ? ( - <> - -

- -

-

- Select or Drop file -

-

- PDF, PowerPoint, Excel, Word, Text, Markdown, -

-
- - ) : ( - <> - Text Source(Optional): - setTextSource(e.target.value)} - sx={{ marginBottom: '20px' }} - /> - Text: -