This package is permanently broken and should not be used. Please read #55.
delphi-ai is a simple package to interact with the API for the Delphi AI. It is developed in TypeScript and transpiles to JavaScript (ESM).
Delphi is an AI released in 2021 by the Allen Institute for Artifical Intelligence, who described it as "a computational model for descriptive ethics, i.e., people's moral judgments on a variety of everyday situations." Essentially, provide a prompt and the AI will judge whether it is ethical.
The demo website uses an API to retrieve outputs from the computational model. This package acts as a wrapper for that API to allow you to integrate Delphi with your projects.
The copyright for Delphi belongs to the Allen Institute for Artifical Intelligence. This package is unofficial and not supported by them. The API could be turned off at any time. Please check the API status above before reporting issues.
This package has no production dependencies, and works with Node (>=18
) or the browser.
npm install delphi-ai
If the API returns a non-200 response, an error will be thrown. None of the examples below include error handling, but don't forget it!
import delphi from 'delphi-ai';
const response = await delphi('Building a rocket');
console.log(response); // "It's impressive"
const delphi = require('delphi-ai');
(async () => {
const response = await delphi('Fighting a mummy');
console.log(response); // "It's wrong"
})();
// or
delphi('Climbing up the Eiffel Tower').then((response) => {
console.log(response); // "It's normal"
});
When a merge request is created, the changes must pass linting, building, and unit tests. These checks are run automatically by GitHub. You can run them manually using npm run lint
, npm run build
, and npm test
.
GitHub will also periodically run a test to confirm the API is still working. You can run this test manually with npm run test-api
.
When a new Release is created, GitHub will automatically deploy the new version to the npm registry.
This project abides by Semantic Versioning and Keep A Changelog. To see a list of changes for each update, check the description of releases on GitHub.