Skip to content

Latest commit

 

History

History
61 lines (44 loc) · 1.93 KB

README.md

File metadata and controls

61 lines (44 loc) · 1.93 KB

Official window.ai client library.

This is the official window.ai client library. It provides the base interface for authenticating and using client-side AI.

The Window AI browser extension implements this interface to inject ai into the global window, thereby exposing the window.ai API to web applications without the need for any dependencies on their part. But any web application can leverage this client library to consume the window.ai API and add typechecking to it.

Note: you can interact with window.ai directly without dependencies (i.e this client library). The library's key benefits for API consumers are:

  • Checking for window.ai installation
  • Type errors and type checking
  • Utilities/helpers

Usage

import { getWindowAI } from 'window.ai';

// initialize the client

const ai = await getWindowAI()

ai.getCurrentModel()
ai.generateText(...)
ai.addEventListener(...)

Model IDs

ModelID is an enum of the available models, which are available as a TypeScript enum:

import { ModelID, parseModelID } from 'window.ai'

const model: ModelID = parseModelID(rawString)

ModelID contains a list of model identifiers that follow the Hugging Face format as closely as possible.

Some examples:

// "/" Splits the organization's name from the model name
"openai/gpt-3.5-turbo"
"openai/gpt-4"
"anthropic/claude-instant-v1"
"anthropic/claude-instant-v1-100k"
"anthropic/claude-v1"
"anthropic/claude-v1-100k"
"togethercomputer/GPT-NeoXT-Chat-Base-20B"
"cohere/command-nightly"
// "Local" is a special ModelID that represents an unknown model handler
// running locally on the user's computer.
"local"

NOTE: This is an evolving standard, and may change in the future. We are currently providing backwards compatibility within the Window AI extension for old model identifiers. See DeprecatedModelID for examples.