feat(backend): use c++ defined types for llama.cpp
This commit is contained in:
parent
c9f6c3a8f7
commit
e0dda9b614
|
@ -36,7 +36,7 @@ namespace huggingface::tgi::backends::llamacpp {
|
||||||
|
|
||||||
llama_sampler_chain_add(sampler, llama_sampler_init_temp(temperature));
|
llama_sampler_chain_add(sampler, llama_sampler_init_temp(temperature));
|
||||||
llama_sampler_chain_add(sampler, llama_sampler_init_dist(seed));
|
llama_sampler_chain_add(sampler, llama_sampler_init_dist(seed));
|
||||||
return {sampler, llama_sampler_deleter};
|
return llama_sampler_ptr(sampler);
|
||||||
}
|
}
|
||||||
|
|
||||||
std::expected<llama_batch, backend_error_t> get_batch_from_prompt(std::span<llama_token> prompt) {
|
std::expected<llama_batch, backend_error_t> get_batch_from_prompt(std::span<llama_token> prompt) {
|
||||||
|
|
|
@ -17,18 +17,12 @@
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
#include <llama.h>
|
#include <llama.h>
|
||||||
|
#include <llama-cpp.h>
|
||||||
#include <thread>
|
#include <thread>
|
||||||
|
|
||||||
#define LLAMA_SUCCESS(x) x == 0
|
#define LLAMA_SUCCESS(x) x == 0
|
||||||
|
|
||||||
namespace huggingface::tgi::backends::llamacpp {
|
namespace huggingface::tgi::backends::llamacpp {
|
||||||
|
|
||||||
static constexpr auto llama_context_deleter = [](llama_context *pContext) { llama_free(pContext); };
|
|
||||||
typedef std::unique_ptr<llama_context, decltype(llama_context_deleter)> llama_context_ptr;
|
|
||||||
|
|
||||||
static constexpr auto llama_sampler_deleter = [](llama_sampler *pSampler) { llama_sampler_free(pSampler); };
|
|
||||||
typedef std::unique_ptr<llama_sampler, decltype(llama_sampler_deleter)> llama_sampler_ptr;
|
|
||||||
|
|
||||||
typedef std::function<bool(llama_token, float_t, bool, size_t)> llama_decode_callback;
|
typedef std::function<bool(llama_token, float_t, bool, size_t)> llama_decode_callback;
|
||||||
static constexpr auto llama_void_callback = [](llama_token, float_t, bool, size_t) -> bool { return false; };
|
static constexpr auto llama_void_callback = [](llama_token, float_t, bool, size_t) -> bool { return false; };
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue