package chatoyant

  1. Overview
  2. Docs
OCaml-first LLM SDK with Melange-generated JavaScript

Install

dune-project
 Dependency

Authors

Maintainers

Sources

chatoyant-v0.12.2.tbz
sha256=a885dcf4b3c6ede268e2027bedf6955a5c889f7ed01c40b719f8369655957d47
sha512=0bb8dfa12157ba2e482927717c2242c1ea914dce1427801e405987811550afbd6d6b11f07d1e1379259360d17f4ca43ff81963bf407cddb7bedd0dfbb93a55ee

doc/chatoyant.provider/Chatoyant_provider/Xai/Make_websocket/argument-1-Ws/index.html

Parameter Make_websocket.Ws

type message =
  1. | Text of string
  2. | Binary of string
type close = {
  1. code : int;
  2. reason : string;
}
type request = {
  1. url : string;
  2. headers : (string * string) list;
  3. protocols : string list;
  4. timeout_ms : int option;
}
type error =
  1. | Timeout of int
  2. | Network of string
  3. | Invalid_response of string
  4. | Closed of close option
type connection
val with_connection : request -> (connection -> 'a) -> ('a, error) result

Open a WebSocket, run the callback while the connection is alive, then close the socket. The callback style keeps runtime resources scoped to their Eio switch while provider modules remain functorized and testable.

val send : connection -> message -> (unit, error) result
val recv : connection -> (message, error) result
val close : ?code:int -> ?reason:string -> connection -> (unit, error) result