Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

ai-horde

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ai-horde

  • 0.1.0
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

ai-horde

Stable Horde and Kobold Horde request library

Work in progress

TODO

  • Add image generation endpoints

Installation and Usage

> npm install ai-horde
import * as ai from 'ai-horde'

const user = await ai.findUser('some-api-key')

API

generate

Dispatch an asynchronous text generation request

// Return: P
function generate(
  type: 'horde' | 'kobold',
  request: GenerateRequest,
  apikey?: string
): Promise<{ id: string }>

type GenerateRequest = {
  prompt: string
  params: {
    n?: number
    max_context_length: number
    max_length: number
    frmtadsnsp?: boolean
    frmtrmblln?: boolean
    frmtrmspch?: boolean
    frmttriminc?: boolean
    rep_pen?: number
    rep_pen_range?: number
    rep_pen_slope?: number
    singleline?: boolean
    soft_prompt?: string
    temperature?: number
    tfs?: number
    top_a?: number
    top_k?: number
    top_p?: number
    typical?: number
    sampler_order?: number
  }
  trusted_workers?: boolean
  nsfw?: boolean
  workers?: string[]
  models?: string[]
}

waitForResponse

Wait for a text generation response

Example:

const { id } = await generate('horde', params, apikey)
const response = await waitForResposne('horde', id)

return response.generations
function waitForResponse(
  type: 'horde' | 'kobold',
  id: string,
  timeoutSecs?: number
): Promise<StatusResponse>

type StatusResponse = {
  finished: number
  processing: number
  restarted: number
  waiting: number
  done: boolean
  faulted: boolean
  wait_time: number
  queue_position: number
  kudos: number
  is_possible: boolean
  generations: Array<{
    worker_id: string
    worker_name: string
    model: string
    state: string
    text: string
    seed: number
  }>
}

findUser

Retrieve user information. If type is not provided, both Horde APIs will be queried and the valid response will be returned.

function findUser(apikey: string, type?: 'horde' | 'kobold'): Promise<FindUserResponse>

type FindUserResponse = {
  type: 'horde' | 'kobold'
  kudos_details: {
    accumulated: number
    gifted: number
    admin: number
    received: number
    recurring: number
  }
  usage: {
    tokens: number
    requests: number
  }
  contributions: {
    tokens: number
    fulfillments: number
  }
  username: string
  id: number
  kudos: number
  concurrency: number
  worker_invited: number
  moderator: boolean
  worker_count: number
  worker_ids: string[]
  trusted: number
  pseudonymous: number
}

FAQs

Package last updated on 02 Mar 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc