Skip to content

[ARCHIVED] A platform utilizing conversational AI to improve the social skills of individuals with ASD.

Notifications You must be signed in to change notification settings

stanford-oval/noora-v1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is an archived repository. The new Noora code can be found here.

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).

Stanford University

Powered by Vercel


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.

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 <Page> 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.

About

[ARCHIVED] A platform utilizing conversational AI to improve the social skills of individuals with ASD.

Topics

Resources

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •