binding.h 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #ifdef __cplusplus
  2. #include <vector>
  3. #include <string>
  4. extern "C" {
  5. #endif
  6. #include <stdbool.h>
  7. extern unsigned char tokenCallback(void *, char *);
  8. int load_state(void *ctx, char *statefile, char*modes);
  9. int eval(void* params_ptr, void *ctx, char*text);
  10. void save_state(void *ctx, char *dst, char*modes);
  11. void* load_model(const char *fname, int n_ctx, int n_seed, bool memory_f16, bool mlock, bool embeddings, bool mmap, bool low_vram, bool vocab_only, int n_gpu, int n_batch, const char *maingpu, const char *tensorsplit, bool numa);
  12. int get_embeddings(void* params_ptr, void* state_pr, float * res_embeddings);
  13. int get_token_embeddings(void* params_ptr, void* state_pr, int *tokens, int tokenSize, float * res_embeddings);
  14. void* llama_allocate_params(const char *prompt, int seed, int threads, int tokens,
  15. int top_k, float top_p, float temp, float repeat_penalty,
  16. int repeat_last_n, bool ignore_eos, bool memory_f16,
  17. int n_batch, int n_keep, const char** antiprompt, int antiprompt_count,
  18. float tfs_z, float typical_p, float frequency_penalty, float presence_penalty, int mirostat, float mirostat_eta, float mirostat_tau, bool penalize_nl, const char *logit_bias, const char *session_file, bool prompt_cache_all, bool mlock, bool mmap, const char *maingpu, const char *tensorsplit , bool prompt_cache_ro);
  19. void llama_free_params(void* params_ptr);
  20. void llama_binding_free_model(void* state);
  21. int llama_predict(void* params_ptr, void* state_pr, char* result, bool debug);
  22. #ifdef __cplusplus
  23. }
  24. std::vector<std::string> create_vector(const char** strings, int count);
  25. void delete_vector(std::vector<std::string>* vec);
  26. #endif