13#define CK_SESSION_ABI_V8_VERSION UINT32_C(1)
113 const char *utf8_text,
115 int32_t sequence_index);
128 size_t descriptor_size);
140 const int32_t *tokens,
148 CKSessionV8 *session, int32_t *output, int32_t capacity);
152 const char *system_text,
153 const char *user_text,
187 size_t *needed_bytes);
189 const int32_t *tokens, int32_t
count,
190 float *logits, uint64_t *ticket_out);
206 int32_t total_tokens,
207 uint64_t *ticket_out);
209 uint64_t ticket,
const int32_t *tokens,
210 int32_t
count,
float *scratch_logits,
211 int32_t *consumed_out);
213 float *
const logits[2], uint32_t *advanced_mask);
225 const int32_t tokens[2],
226 const uint64_t tickets[2],
227 uint32_t prefill_slot,
228 float *
const logits[2],
229 uint32_t *advanced_mask,
230 int32_t *consumed_out);
233 int32_t *position_out);
const char * ck_session_v8_last_error(const CKSessionV8 *session)
int ck_session_v8_batch2_position(CKSessionV8 *session, uint32_t slot, int32_t *position_out)
int ck_session_v8_open(const CKSessionConfigV8 *config, CKSessionV8 **session_out)
void ck_session_v8_close(CKSessionV8 *session)
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)
int ck_session_v8_decode(CKSessionV8 *session, const int32_t *tokens, int32_t token_count, char *output, int32_t capacity)
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_reset_slot(CKSessionV8 *session, uint32_t slot)
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)
int ck_session_v8_batch2_enable(CKSessionV8 *session, size_t max_extra_bytes, size_t *needed_bytes)
void ck_session_v8_batch2_request_cancel(CKSessionV8 *session, uint64_t ticket)
struct CKSessionV8 CKSessionV8
int ck_session_v8_get_model_descriptor(const CKSessionV8 *session, CKModelRuntimeDescriptorV8 *descriptor, size_t descriptor_size)
void ck_session_v8_cancel(CKSessionV8 *session)
int ck_session_v8_format_chat(CKSessionV8 *session, const char *system_text, const char *user_text, char *output, int32_t capacity)
@ CK_SESSION_V8_ERROR_LOAD
@ 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
uint32_t ck_session_v8_get_abi_version(void)
int ck_session_v8_reset(CKSessionV8 *session)
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_generate(CKSessionV8 *session, const CKSessionGenerateRequestV8 *request, ck_session_token_callback_v8 callback, void *user_data, CKSessionGenerateResultV8 *result)
@ CK_SESSION_STOP_CANCELLED
@ CK_SESSION_STOP_RUNTIME_ERROR
@ CK_SESSION_STOP_CALLBACK
@ CK_SESSION_STOP_TOKEN_LIMIT
int ck_session_v8_encode(CKSessionV8 *session, const char *text, int32_t *output, int32_t capacity)
@ 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
int ck_session_v8_batch2_step(CKSessionV8 *session, const int32_t tokens[2], float *const logits[2], uint32_t *advanced_mask)
int ck_session_v8_get_stop_token_ids(CKSessionV8 *session, int32_t *output, int32_t capacity)
const char * weights_path
const char * model_library_path
uint64_t required_capabilities
const char * manifest_path
const CKBPEConfig * config
const uint8_t size_t count