From f66c33380c2e82fdf30c6f8a386b044e65c6a4fe Mon Sep 17 00:00:00 2001 From: Weves Date: Fri, 19 Jul 2024 20:20:51 -0700 Subject: [PATCH] Improve widget README --- examples/widget/README.md | 37 ++++++----------------- examples/widget/src/app/widget/Widget.tsx | 4 ++- 2 files changed, 13 insertions(+), 28 deletions(-) diff --git a/examples/widget/README.md b/examples/widget/README.md index c4033664f8..53976cd72c 100644 --- a/examples/widget/README.md +++ b/examples/widget/README.md @@ -1,36 +1,19 @@ -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). +This is a code example for how you can use Danswer's APIs to build a chat bot widget for a website! The main code to look at can be found in `src/app/widget/Widget.tsx`. + +If you want to get fancier, then take a peek at the Chat implementation within Danswer itself [here](https://github.com/danswer-ai/danswer/blob/main/web/src/app/chat/ChatPage.tsx#L82). ## Getting Started -First, run the development server: +First, install the requirements: + +```bash +npm i +``` + +Then run the development server: ```bash npm run dev -# or -yarn dev -# or -pnpm dev -# or -bun 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/examples/widget/src/app/widget/Widget.tsx b/examples/widget/src/app/widget/Widget.tsx index 55bd25f6ef..44654993c8 100644 --- a/examples/widget/src/app/widget/Widget.tsx +++ b/examples/widget/src/app/widget/Widget.tsx @@ -104,6 +104,7 @@ async function* sendMessage({ Authorization: `Bearer ${API_KEY}`, }, body: JSON.stringify({ + // or specify an assistant you have defined persona_id: 0, }), }, @@ -132,9 +133,10 @@ async function* sendMessage({ prompt_id: null, search_doc_ids: null, file_descriptors: [], + // checkout https://github.com/danswer-ai/danswer/blob/main/backend/danswer/search/models.py#L105 for + // all available options retrieval_options: { run_search: "always", - // Checkout <> TODO filters: null, }, query_override: null,