← Back to C-Kernel-Engine Docs Doxygen Source Documentation
 
Loading...
Searching...
No Matches
ck_session_v8.h File Reference
#include <stddef.h>
#include <stdint.h>
#include "ck_model_abi_v8.h"

Go to the source code of this file.

Data Structures

struct  CKSessionConfigV8
 
struct  CKSessionGenerateRequestV8
 
struct  CKSessionGenerateResultV8
 

Macros

#define CK_SESSION_ABI_V8_VERSION   UINT32_C(1)
 

Typedefs

typedef int(* ck_session_token_callback_v8) (void *user_data, int32_t token_id, const char *utf8_text, size_t utf8_length, int32_t sequence_index)
 
typedef struct CKSessionV8 CKSessionV8
 

Enumerations

enum  CKSessionRequestFlagsV8 {
  CK_SESSION_REQUEST_RAW_PROMPT = UINT32_C(1) << 0 , CK_SESSION_REQUEST_IGNORE_EOS = UINT32_C(1) << 1 , CK_SESSION_REQUEST_TIMESTAMPS = UINT32_C(1) << 2 , CK_SESSION_REQUEST_CONTINUE_STATE = UINT32_C(1) << 3 ,
  CK_SESSION_REQUEST_REJECT_PROMPT_TRUNCATION = UINT32_C(1) << 4
}
 
enum  CKSessionStatusV8 {
  CK_SESSION_V8_OK = 0 , CK_SESSION_V8_ERROR_INVALID_ARGUMENT = -1 , CK_SESSION_V8_ERROR_ABI = -2 , CK_SESSION_V8_ERROR_LOAD = -3 ,
  CK_SESSION_V8_ERROR_INIT = -4 , CK_SESSION_V8_ERROR_CAPABILITY = -5 , CK_SESSION_V8_ERROR_BUSY = -6 , CK_SESSION_V8_ERROR_RUNTIME = -7 ,
  CK_SESSION_V8_ERROR_BUFFER_TOO_SMALL = -8 , CK_SESSION_V8_ERROR_CANCELLED = -9
}
 
enum  CKSessionStopReasonV8 {
  CK_SESSION_STOP_NONE = 0 , CK_SESSION_STOP_EOS = 1 , CK_SESSION_STOP_TOKEN_LIMIT = 2 , CK_SESSION_STOP_CANCELLED = 3 ,
  CK_SESSION_STOP_CALLBACK = 4 , CK_SESSION_STOP_RUNTIME_ERROR = 5
}
 

Functions

int ck_session_v8_batch2_enable (CKSessionV8 *session, size_t max_extra_bytes, size_t *needed_bytes)
 
int ck_session_v8_batch2_mixed_step (CKSessionV8 *session, const int32_t tokens[2], const uint64_t tickets[2], uint32_t prefill_slot, float *const logits[2], uint32_t *advanced_mask, int32_t *consumed_out)
 
int ck_session_v8_batch2_position (CKSessionV8 *session, uint32_t slot, int32_t *position_out)
 
int ck_session_v8_batch2_prefill (CKSessionV8 *session, uint32_t slot, const int32_t *tokens, int32_t count, float *logits, uint64_t *ticket_out)
 
int ck_session_v8_batch2_prefill_append (CKSessionV8 *session, uint32_t slot, uint64_t ticket, const int32_t *tokens, int32_t count, float *scratch_logits, int32_t *consumed_out)
 
int ck_session_v8_batch2_prefill_begin (CKSessionV8 *session, uint32_t slot, int32_t total_tokens, uint64_t *ticket_out)
 
void ck_session_v8_batch2_request_cancel (CKSessionV8 *session, uint64_t ticket)
 
int ck_session_v8_batch2_reset_slot (CKSessionV8 *session, uint32_t slot)
 
int ck_session_v8_batch2_step (CKSessionV8 *session, const int32_t tokens[2], float *const logits[2], uint32_t *advanced_mask)
 
void ck_session_v8_cancel (CKSessionV8 *session)
 
void ck_session_v8_close (CKSessionV8 *session)
 
int ck_session_v8_decode (CKSessionV8 *session, const int32_t *tokens, int32_t token_count, char *output, int32_t capacity)
 
int ck_session_v8_encode (CKSessionV8 *session, const char *text, int32_t *output, int32_t capacity)
 
int ck_session_v8_format_chat (CKSessionV8 *session, const char *system_text, const char *user_text, char *output, int32_t capacity)
 
int ck_session_v8_generate (CKSessionV8 *session, const CKSessionGenerateRequestV8 *request, ck_session_token_callback_v8 callback, void *user_data, CKSessionGenerateResultV8 *result)
 
uint32_t ck_session_v8_get_abi_version (void)
 
int ck_session_v8_get_model_descriptor (const CKSessionV8 *session, CKModelRuntimeDescriptorV8 *descriptor, size_t descriptor_size)
 
int ck_session_v8_get_stop_token_ids (CKSessionV8 *session, int32_t *output, int32_t capacity)
 
const char * ck_session_v8_last_error (const CKSessionV8 *session)
 
int ck_session_v8_open (const CKSessionConfigV8 *config, CKSessionV8 **session_out)
 
int ck_session_v8_reset (CKSessionV8 *session)
 

Macro Definition Documentation

◆ CK_SESSION_ABI_V8_VERSION

#define CK_SESSION_ABI_V8_VERSION   UINT32_C(1)

Definition at line 13 of file ck_session_v8.h.

Typedef Documentation

◆ ck_session_token_callback_v8

typedef int(* ck_session_token_callback_v8) (void *user_data, int32_t token_id, const char *utf8_text, size_t utf8_length, int32_t sequence_index)

Definition at line 110 of file ck_session_v8.h.

◆ CKSessionV8

typedef struct CKSessionV8 CKSessionV8

Definition at line 15 of file ck_session_v8.h.

Enumeration Type Documentation

◆ CKSessionRequestFlagsV8

Enumerator
CK_SESSION_REQUEST_RAW_PROMPT 
CK_SESSION_REQUEST_IGNORE_EOS 
CK_SESSION_REQUEST_TIMESTAMPS 
CK_SESSION_REQUEST_CONTINUE_STATE 
CK_SESSION_REQUEST_REJECT_PROMPT_TRUNCATION 

Definition at line 56 of file ck_session_v8.h.

56 {
57 CK_SESSION_REQUEST_RAW_PROMPT = UINT32_C(1) << 0,
58 CK_SESSION_REQUEST_IGNORE_EOS = UINT32_C(1) << 1,
59 CK_SESSION_REQUEST_TIMESTAMPS = UINT32_C(1) << 2,
60 /* Requests reset generated recurrent/KV state by default. Set this only
61 * when the caller deliberately continues the preceding request. */
62 CK_SESSION_REQUEST_CONTINUE_STATE = UINT32_C(1) << 3,
63 /* Fail the request instead of silently truncating a prompt that does not
64 * fit the remaining context budget. Serving layers set this so their
65 * admission policy can never be bypassed by the native truncation
66 * fallback. */
68};
@ CK_SESSION_REQUEST_CONTINUE_STATE
@ CK_SESSION_REQUEST_TIMESTAMPS
@ CK_SESSION_REQUEST_REJECT_PROMPT_TRUNCATION
@ CK_SESSION_REQUEST_RAW_PROMPT
@ CK_SESSION_REQUEST_IGNORE_EOS

◆ CKSessionStatusV8

Enumerator
CK_SESSION_V8_OK 
CK_SESSION_V8_ERROR_INVALID_ARGUMENT 
CK_SESSION_V8_ERROR_ABI 
CK_SESSION_V8_ERROR_LOAD 
CK_SESSION_V8_ERROR_INIT 
CK_SESSION_V8_ERROR_CAPABILITY 
CK_SESSION_V8_ERROR_BUSY 
CK_SESSION_V8_ERROR_RUNTIME 
CK_SESSION_V8_ERROR_BUFFER_TOO_SMALL 
CK_SESSION_V8_ERROR_CANCELLED 

Definition at line 34 of file ck_session_v8.h.

34 {
45};
@ CK_SESSION_V8_ERROR_LOAD
@ CK_SESSION_V8_OK
@ CK_SESSION_V8_ERROR_BUFFER_TOO_SMALL
@ CK_SESSION_V8_ERROR_CANCELLED
@ CK_SESSION_V8_ERROR_INIT
@ CK_SESSION_V8_ERROR_CAPABILITY
@ CK_SESSION_V8_ERROR_ABI
@ CK_SESSION_V8_ERROR_RUNTIME
@ CK_SESSION_V8_ERROR_INVALID_ARGUMENT
@ CK_SESSION_V8_ERROR_BUSY

◆ CKSessionStopReasonV8

Enumerator
CK_SESSION_STOP_NONE 
CK_SESSION_STOP_EOS 
CK_SESSION_STOP_TOKEN_LIMIT 
CK_SESSION_STOP_CANCELLED 
CK_SESSION_STOP_CALLBACK 
CK_SESSION_STOP_RUNTIME_ERROR 

Definition at line 47 of file ck_session_v8.h.

47 {
54};
@ CK_SESSION_STOP_CANCELLED
@ CK_SESSION_STOP_RUNTIME_ERROR
@ CK_SESSION_STOP_CALLBACK
@ CK_SESSION_STOP_EOS
@ CK_SESSION_STOP_NONE
@ CK_SESSION_STOP_TOKEN_LIMIT

Function Documentation

◆ ck_session_v8_batch2_enable()

int ck_session_v8_batch2_enable ( CKSessionV8 *  session,
size_t  max_extra_bytes,
size_t *  needed_bytes 
)

◆ ck_session_v8_batch2_mixed_step()

int ck_session_v8_batch2_mixed_step ( CKSessionV8 *  session,
const int32_t  tokens[2],
const uint64_t  tickets[2],
uint32_t  prefill_slot,
float *const  logits[2],
uint32_t *  advanced_mask,
int32_t *  consumed_out 
)

◆ ck_session_v8_batch2_position()

int ck_session_v8_batch2_position ( CKSessionV8 *  session,
uint32_t  slot,
int32_t *  position_out 
)

◆ ck_session_v8_batch2_prefill()

int ck_session_v8_batch2_prefill ( CKSessionV8 *  session,
uint32_t  slot,
const int32_t *  tokens,
int32_t  count,
float *  logits,
uint64_t *  ticket_out 
)

◆ ck_session_v8_batch2_prefill_append()

int ck_session_v8_batch2_prefill_append ( CKSessionV8 *  session,
uint32_t  slot,
uint64_t  ticket,
const int32_t *  tokens,
int32_t  count,
float *  scratch_logits,
int32_t *  consumed_out 
)

◆ ck_session_v8_batch2_prefill_begin()

int ck_session_v8_batch2_prefill_begin ( CKSessionV8 *  session,
uint32_t  slot,
int32_t  total_tokens,
uint64_t *  ticket_out 
)

◆ ck_session_v8_batch2_request_cancel()

void ck_session_v8_batch2_request_cancel ( CKSessionV8 *  session,
uint64_t  ticket 
)

◆ ck_session_v8_batch2_reset_slot()

int ck_session_v8_batch2_reset_slot ( CKSessionV8 *  session,
uint32_t  slot 
)

◆ ck_session_v8_batch2_step()

int ck_session_v8_batch2_step ( CKSessionV8 *  session,
const int32_t  tokens[2],
float *const  logits[2],
uint32_t *  advanced_mask 
)

◆ ck_session_v8_cancel()

void ck_session_v8_cancel ( CKSessionV8 *  session)

◆ ck_session_v8_close()

void ck_session_v8_close ( CKSessionV8 *  session)

◆ ck_session_v8_decode()

int ck_session_v8_decode ( CKSessionV8 *  session,
const int32_t *  tokens,
int32_t  token_count,
char *  output,
int32_t  capacity 
)

◆ ck_session_v8_encode()

int ck_session_v8_encode ( CKSessionV8 *  session,
const char *  text,
int32_t *  output,
int32_t  capacity 
)

◆ ck_session_v8_format_chat()

int ck_session_v8_format_chat ( CKSessionV8 *  session,
const char *  system_text,
const char *  user_text,
char *  output,
int32_t  capacity 
)

◆ ck_session_v8_generate()

int ck_session_v8_generate ( CKSessionV8 *  session,
const CKSessionGenerateRequestV8 *  request,
ck_session_token_callback_v8  callback,
void *  user_data,
CKSessionGenerateResultV8 *  result 
)

◆ ck_session_v8_get_abi_version()

uint32_t ck_session_v8_get_abi_version ( void  )

◆ ck_session_v8_get_model_descriptor()

int ck_session_v8_get_model_descriptor ( const CKSessionV8 *  session,
CKModelRuntimeDescriptorV8 *  descriptor,
size_t  descriptor_size 
)

◆ ck_session_v8_get_stop_token_ids()

int ck_session_v8_get_stop_token_ids ( CKSessionV8 *  session,
int32_t *  output,
int32_t  capacity 
)

◆ ck_session_v8_last_error()

const char * ck_session_v8_last_error ( const CKSessionV8 *  session)

◆ ck_session_v8_open()

int ck_session_v8_open ( const CKSessionConfigV8 *  config,
CKSessionV8 **  session_out 
)

◆ ck_session_v8_reset()

int ck_session_v8_reset ( CKSessionV8 *  session)