Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/stanford-oval/noora-v1
[ARCHIVED] A platform utilizing conversational AI to improve the social skills of individuals with ASD.
https://github.com/stanford-oval/noora-v1
chatbot gpt-3 nextjs tailwindcss
Last synced: 2 months ago
JSON representation
[ARCHIVED] A platform utilizing conversational AI to improve the social skills of individuals with ASD.
- Host: GitHub
- URL: https://github.com/stanford-oval/noora-v1
- Owner: stanford-oval
- Created: 2022-07-14T23:56:40.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-15T16:22:33.000Z (4 months ago)
- Last Synced: 2024-09-15T17:34:26.933Z (4 months ago)
- Topics: chatbot, gpt-3, nextjs, tailwindcss
- Language: TypeScript
- Homepage: https://noora.stanford.edu
- Size: 53 MB
- Stars: 14
- Watchers: 7
- Forks: 3
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
> This is an archived repository. The new Noora code can be found [here](https://github.com/stanford-oval/noora).
Noora
Use AI to improve your social conversation.
A platform utilizing conversational AI to improve the social conversation of individuals with Autism Spectrum Disorder (ASD).
## Overview
Noora is is a research project led by Prof. Monica Lam, from Stanford University, with the goal of improving the social conversation of people with Autism Spectrum Disorder (ASD). The project is a collaboration between Stanford's Open Virtual Assistant Lab and Dr. Lynn Koegel from Stanford's Dept. of Psychiatry and Behavioral Sciences.
This project built with Next.js, Tailwind CSS, OpenAI's GPT-3, and Microsoft Azure.
## Developer Setup
To run Noora locally for development, install the dependencies from your package manager and start the Next.js app.
```bash
yarn install
yarn run dev
```Create a `.env.local` file for the following environment variables.
For the speech-to-text and text-to-speech functionality, create an Azure speech resource (and a corresponding resource group).
```
OPENAI_API_KEY=[your API key]
SPEECH_KEY=[your API key]
SPEECH_REGION=[your API key]
```## Repo Structure
**`pages`**: all of the Next.js app's paths (e.g., `noora.tsx`, `_404.tsx`). These files simply return components, typically wrapped by the `` component.
**`components`**: the bulk of the website code. Folders under this directory reference the pages of the website, with the exception of `components/global` and `components/interfaces`.
- `components/interfaces` contains the code behind the Noora Chat feature and the Ask Noora feature.**`data`**: all static or pre-written data, such as GPT-3 prompts, statement banks, routes.
**`scripts`**: code that is called by components.
- `/scripts/noora-chat` (and, more specifically, `get-reply.ts`) contains the logic and flow for Noora's replies, and is used in `MessageBox.tsx` (where users submit their message in the Noora Chat).**`pages/api`**: the REST API endpoints. Rate limiting is in place for endpoints (implementation found in `scripts/rate-limit.ts`).
- `api/openai` calls OpenAI's Completion endpoint and returns the resulting `text` and `logprobs`.
- `api/get-speech-token.ts` retrieves an ephemeral authentication token for Microsoft Azure's speech service.**`public`**: the public assets including images and static files.