Klu.ai SDK for building AI-powerered apps
The Klu.ai Typescript SDK is a library that provides access to the Klu API, allowing developers to interact with their Klu workspace, including: Apps, Actions, Context, Data, and Models.
The Klu.ai Typescript SDK can be installed in any JS / TS environment. The only requirements is to have npm.
To install the Klu.ai Typescript SDK, simply run:
pnpm i @kluai/core
First obtain an API key from your Klu workspace. Using your API key, create a klu
object:
import Klu from '@kluai/core';
const klu = new Klu('YOUR_API_KEY');
With the klu
object, you can access the Models available in your Klu workspace:
import Klu from '@kluai/core';
const klu = new Klu('YOUR_API_KEY');
const models = await klu.models.getAllModels();
To list all Apps in your workspace, use:
import Klu from '@kluai/core';
const klu = new Klu('YOUR_API_KEY');
const apps = await klu.apps.paginator.fetchAll();
Action prompts support dynamic variables injected at run time.
import Klu from '@kluai/core';
const klu = new Klu('API_KEY');
async function promptAction() {
const result = klu.actions.prompt(actionId, {
topic: 'Machine Learning.',
task: 'Correct any grammar or spelling mistakes.',
});
console.log(result);
}
promptAction();
Streaming is commonly used to improve the user experience. A unique streaming url generates as part of the Action response and the Klu SDK manages the SSR session.
import Klu from '@kluai/core';
const klu = new Klu('YOUR_API_KEY');
const dataStream = await klu.actions.prompt('actionGuid', 'prompt input', {
streaming: true,
});
for await (const token of dataStream) {
tokens.push(token || '');
}
Get a list of Data generations for an Action, you can use:
import Klu from '@kluai/core';
const klu = new Klu('YOUR_API_KEY');
const data = await klu.actions.getData('actionGUID');
For more detailed information on how to use the Klu.ai Typescript SDK, please refer to the SDK documentation.
Free Software: MIT License
The Klu SDK is open source software released under the MIT License. This permissive license allows you to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Klu SDK, subject to a few simple conditions:
- Copyright notice - You must include the copyright notice in all copies or substantial portions of the software.
- License notice - You must include the license notice in all copies or substantial portions of the software.
- Warranty disclaimer - The software is provided "as is" without warranty of any kind. The authors and copyright holders are not liable for any claim, damages or other liability.
- Liability limitation - In no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise.