~/projects/ainstein

AInstein.io

> AI Research Assistant

AInstein is an AI research assistant that derives its responses from peer-reviewed academic literature. At the time of its creation, web search capabilities among frontier LLMs were still in their infancy, and obtaining reliable scientific information using them was a struggle.

AInstein organically grew to over 50 active users by late December of 2024, but growth soon tapered, coinciding with widespread adoption of agentic search capabilities by mainstream providers (i.e. OpenAI's Deep Research).

Status:
Production
Timeline:
3 months
Role:
Fullstack Developer
Team:
Solo Project
AInstein.io

[Features]

Research Dataset

AInstein is built on the Semantic Scholar Academic Graph (S2AG) API, providing access to over 200 million academic papers.

User Interface

AInstein boasts a sleek, performant, accessible user interface, built using shadcn/ui components.

Authentication

Users are given a limited number of unauthenticated messages, after which they are prompted to sign in using an OAuth 2.0 provider. Upon sign in, their previous messages are linked to the new account.

System Prompt

AInstein's system prompt was iteratively designed with an emphasis on reliable source citation. Using a RAG pipeline, the assistant retrieves relevant literature, citing each document with a unique identifier in its response.

[Key Challenges]

Prompt Engineering

Developing a reliable prompt for the gpt-4o-mini model (chosen due to cost constraints) required an iterative process spanning weeks of testing. Through careful wording, clear guidelines, and positive/negative examples, a prompt that sufficiently directs the model was created. The active prompt is customized on a user-to-user basis, based on their response length and format preferences.

Authentication

Similar to ChatGPT and other mainstream AI assistants, an authentication system that a) allows unauthenticated users to begin chatting without registration, and b) associates unauthenticated messages with an account upon creation, was necessary. The developed authentication system does just that, using OAuth 2.0 to securely handle sign-ins and registrations.