diff --git a/.editorconfig b/.editorconfig index 5d63d0a51..1eadda334 100644 --- a/.editorconfig +++ b/.editorconfig @@ -21,15 +21,15 @@ indent_style = tab [prompts/*.txt] insert_final_newline = unset -[examples/server/public/*] +[tools/server/public/*] indent_size = 2 -[examples/server/public/deps_*] +[tools/server/public/deps_*] trim_trailing_whitespace = unset indent_style = unset indent_size = unset -[examples/server/deps_*] +[tools/server/deps_*] trim_trailing_whitespace = unset indent_style = unset indent_size = unset @@ -37,7 +37,7 @@ indent_size = unset [examples/llama.swiftui/llama.swiftui.xcodeproj/*] indent_style = tab -[examples/cvector-generator/*.txt] +[tools/cvector-generator/*.txt] trim_trailing_whitespace = unset insert_final_newline = unset diff --git a/.gitignore b/.gitignore index 6477772de..e0a52e60c 100644 --- a/.gitignore +++ b/.gitignore @@ -92,8 +92,6 @@ ppl-*.txt qnt-*.txt perf-*.txt -examples/jeopardy/results.txt - poetry.lock poetry.toml diff --git a/CMakeLists.txt b/CMakeLists.txt index ecd50ab7d..20bb222b0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -470,51 +470,51 @@ add_library(common2 common/common.h common/sampling.cpp common/sampling.h - examples/llava/llava.cpp - examples/llava/llava.h - examples/llava/clip.cpp - examples/llava/clip.h + tools/llava/llava.cpp + tools/llava/llava.h + tools/llava/clip.cpp + tools/llava/clip.h src/unicode.h src/unicode.cpp src/unicode-data.cpp otherarch/utils.cpp otherarch/utils.h) -target_include_directories(common2 PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./otherarch/sdcpp ./otherarch/sdcpp/thirdparty ./examples ./common) +target_include_directories(common2 PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./otherarch/sdcpp ./otherarch/sdcpp/thirdparty ./tools ./common) target_compile_features(common2 PUBLIC cxx_std_17) # don't bump target_link_libraries(common2 PRIVATE ggml ${LLAMA_EXTRA_LIBS}) set_target_properties(common2 PROPERTIES POSITION_INDEPENDENT_CODE ON) add_library(sdtype_adapter otherarch/sdcpp/sdtype_adapter.cpp) -target_include_directories(sdtype_adapter PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./otherarch/sdcpp ./otherarch/sdcpp/thirdparty ./examples ./common) +target_include_directories(sdtype_adapter PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./otherarch/sdcpp ./otherarch/sdcpp/thirdparty ./tools ./common) target_compile_features(sdtype_adapter PUBLIC cxx_std_17) # don't bump target_link_libraries(sdtype_adapter PRIVATE common2 ggml ${LLAMA_EXTRA_LIBS}) set_target_properties(sdtype_adapter PROPERTIES POSITION_INDEPENDENT_CODE ON) add_library(whisper_adapter otherarch/whispercpp/whisper_adapter.cpp) -target_include_directories(whisper_adapter PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./otherarch/whispercpp ./examples ./common) +target_include_directories(whisper_adapter PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./otherarch/whispercpp ./tools ./common) target_compile_features(whisper_adapter PUBLIC cxx_std_17) # don't bump target_link_libraries(whisper_adapter PRIVATE common2 ggml ${LLAMA_EXTRA_LIBS}) set_target_properties(whisper_adapter PROPERTIES POSITION_INDEPENDENT_CODE ON) add_library(tts_adapter otherarch/tts_adapter.cpp) -target_include_directories(tts_adapter PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./examples ./common) +target_include_directories(tts_adapter PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./tools ./common) target_compile_features(tts_adapter PUBLIC cxx_std_17) # don't bump target_link_libraries(tts_adapter PRIVATE common2 ggml ${LLAMA_EXTRA_LIBS}) set_target_properties(tts_adapter PROPERTIES POSITION_INDEPENDENT_CODE ON) add_library(embeddings_adapter otherarch/embeddings_adapter.cpp) -target_include_directories(embeddings_adapter PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./examples ./common) +target_include_directories(embeddings_adapter PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./tools ./common) target_compile_features(embeddings_adapter PUBLIC cxx_std_17) # don't bump target_link_libraries(embeddings_adapter PRIVATE common2 ggml ${LLAMA_EXTRA_LIBS}) set_target_properties(embeddings_adapter PROPERTIES POSITION_INDEPENDENT_CODE ON) add_library(gpttype_adapter gpttype_adapter.cpp) -target_include_directories(gpttype_adapter PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./otherarch/sdcpp ./otherarch/sdcpp/thirdparty ./examples ./common) +target_include_directories(gpttype_adapter PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./otherarch/sdcpp ./otherarch/sdcpp/thirdparty ./tools ./common) target_compile_features(gpttype_adapter PUBLIC cxx_std_17) # don't bump target_link_libraries(gpttype_adapter PRIVATE common2 ggml ggml_v1 ggml_v2 ggml_v3 ${LLAMA_EXTRA_LIBS}) set_target_properties(gpttype_adapter PROPERTIES POSITION_INDEPENDENT_CODE ON) @@ -522,7 +522,7 @@ set_target_properties(gpttype_adapter PROPERTIES POSITION_INDEPENDENT_CODE ON) if (LLAMA_CUBLAS) set(TARGET koboldcpp_cublas) add_library(${TARGET} SHARED expose.cpp expose.h) - target_include_directories(${TARGET} PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./otherarch/sdcpp ./otherarch/sdcpp/thirdparty ./examples ./common) + target_include_directories(${TARGET} PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./otherarch/sdcpp ./otherarch/sdcpp/thirdparty ./tools ./common) target_compile_features(${TARGET} PUBLIC cxx_std_17) # don't bump set_target_properties(${TARGET} PROPERTIES PREFIX "") set_target_properties(${TARGET} PROPERTIES OUTPUT_NAME "koboldcpp_cublas") @@ -542,7 +542,7 @@ endif() if (LLAMA_HIPBLAS) set(TARGET koboldcpp_hipblas) add_library(${TARGET} SHARED expose.cpp expose.h) - target_include_directories(${TARGET} PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./otherarch/sdcpp ./otherarch/sdcpp/thirdparty ./examples ./common) + target_include_directories(${TARGET} PUBLIC . ./ggml/include ./ggml/src ./ggml/src/ggml-cpu ./include ./otherarch ./otherarch/tools ./otherarch/sdcpp ./otherarch/sdcpp/thirdparty ./tools ./common) target_compile_features(${TARGET} PUBLIC cxx_std_17) # don't bump set_target_properties(${TARGET} PROPERTIES PREFIX "") set_target_properties(${TARGET} PROPERTIES OUTPUT_NAME "koboldcpp_hipblas") diff --git a/Makefile b/Makefile index 2da5bfeda..84d838199 100644 --- a/Makefile +++ b/Makefile @@ -511,7 +511,7 @@ sgemm_failsafe.o: ggml/src/ggml-cpu/llamafile/sgemm.cpp ggml/src/ggml-cpu/llamaf #there's no intrinsics or special gpu ops used here, so we can have a universal object ggml-alloc.o: ggml/src/ggml-alloc.c ggml/include/ggml.h ggml/include/ggml-alloc.h $(CC) $(CFLAGS) -c $< -o $@ -llava.o: examples/llava/llava.cpp examples/llava/llava.h +llava.o: tools/llava/llava.cpp tools/llava/llava.h $(CXX) $(CXXFLAGS) -c $< -o $@ unicode.o: src/unicode.cpp src/unicode.h $(CXX) $(CXXFLAGS) -c $< -o $@ @@ -541,11 +541,11 @@ ggml-backend-reg_vulkan.o: ggml/src/ggml-backend-reg.cpp ggml/src/ggml-backend-i $(CXX) $(CXXFLAGS) $(VULKAN_FLAGS) -c $< -o $@ ggml-backend-reg_cublas.o: ggml/src/ggml-backend-reg.cpp ggml/src/ggml-backend-impl.h ggml/include/ggml.h ggml/include/ggml-backend.h ggml/include/ggml-cpu.h $(CXX) $(CXXFLAGS) $(CUBLAS_FLAGS) $(HIPFLAGS) -c $< -o $@ -llavaclip_default.o: examples/llava/clip.cpp examples/llava/clip.h +llavaclip_default.o: tools/llava/clip.cpp tools/llava/clip.h $(CXX) $(CXXFLAGS) -c $< -o $@ -llavaclip_cublas.o: examples/llava/clip.cpp examples/llava/clip.h +llavaclip_cublas.o: tools/llava/clip.cpp tools/llava/clip.h $(CXX) $(CXXFLAGS) $(CUBLAS_FLAGS) $(HIPFLAGS) -c $< -o $@ -llavaclip_vulkan.o: examples/llava/clip.cpp examples/llava/clip.h +llavaclip_vulkan.o: tools/llava/clip.cpp tools/llava/clip.h $(CXX) $(CXXFLAGS) $(VULKAN_FLAGS) -c $< -o $@ #this is only used for accelerate @@ -663,17 +663,17 @@ clean: rm -vrf ggml/src/ggml-cuda/template-instances/*.o # useful tools -main: examples/main/main.cpp common/arg.cpp build-info.h ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o console.o llavaclip_default.o llava.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(OBJS) +main: tools/main/main.cpp common/arg.cpp build-info.h ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o console.o llavaclip_default.o llava.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(OBJS) $(CXX) $(CXXFLAGS) $(filter-out %.h,$^) -o $@ $(LDFLAGS) sdmain: otherarch/sdcpp/util.cpp otherarch/sdcpp/main.cpp otherarch/sdcpp/stable-diffusion.cpp otherarch/sdcpp/upscaler.cpp otherarch/sdcpp/model.cpp otherarch/sdcpp/thirdparty/zip.c build-info.h ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o console.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(OBJS) $(CXX) $(CXXFLAGS) $(filter-out %.h,$^) -o $@ $(LDFLAGS) whispermain: otherarch/whispercpp/main.cpp otherarch/whispercpp/whisper.cpp build-info.h ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o console.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(OBJS) $(CXX) $(CXXFLAGS) $(filter-out %.h,$^) -o $@ $(LDFLAGS) -ttsmain: examples/tts/tts.cpp common/arg.cpp build-info.h ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o console.o llavaclip_default.o llava.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(OBJS) +ttsmain: tools/tts/tts.cpp common/arg.cpp build-info.h ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o console.o llavaclip_default.o llava.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(OBJS) $(CXX) $(CXXFLAGS) $(filter-out %.h,$^) -o $@ $(LDFLAGS) -gguf-split: examples/gguf-split/gguf-split.cpp ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o build-info.h llavaclip_default.o llava.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(OBJS) +gguf-split: tools/gguf-split/gguf-split.cpp ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o build-info.h llavaclip_default.o llava.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(OBJS) $(CXX) $(CXXFLAGS) $(filter-out %.h,$^) -o $@ $(LDFLAGS) -mtmd-cli: examples/llava/mtmd-cli.cpp examples/llava/mtmd.cpp common/arg.cpp build-info.h ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o console.o llavaclip_default.o llava.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(OBJS) +mtmd-cli: tools/llava/mtmd-cli.cpp tools/llava/mtmd.cpp common/arg.cpp build-info.h ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o console.o llavaclip_default.o llava.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(OBJS) $(CXX) $(CXXFLAGS) $(filter-out %.h,$^) -o $@ $(LDFLAGS) ggml/src/ggml-vulkan-shaders.cpp: @@ -817,7 +817,7 @@ koboldcpp_vulkan_noavx2: endif # tools -quantize_gguf: examples/quantize/quantize.cpp ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o llavaclip_default.o llava.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) +quantize_gguf: tools/quantize/quantize.cpp ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o llavaclip_default.o llava.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(CXX) $(CXXFLAGS) $^ -o $@ $(LDFLAGS) quantize_gptj: otherarch/tools/gptj_quantize.cpp otherarch/tools/common-ggml.cpp ggml_v3.o ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o llavaclip_default.o llava.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(CXX) $(CXXFLAGS) $^ -o $@ $(LDFLAGS) @@ -827,7 +827,7 @@ quantize_neox: otherarch/tools/neox_quantize.cpp otherarch/tools/common-ggml.cpp $(CXX) $(CXXFLAGS) $^ -o $@ $(LDFLAGS) quantize_mpt: otherarch/tools/mpt_quantize.cpp otherarch/tools/common-ggml.cpp ggml_v3.o ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o llavaclip_default.o llava.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(CXX) $(CXXFLAGS) $^ -o $@ $(LDFLAGS) -quantize_clip: examples/llava/clip.cpp examples/llava/clip.h examples/llava/quantclip.cpp ggml_v3.o ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) +quantize_clip: tools/llava/clip.cpp tools/llava/clip.h tools/quantclip.cpp ggml_v3.o ggml.o ggml-cpu.o ggml-ops.o ggml-vec.o ggml-binops.o ggml-unops.o llama.o ggml-backend_default.o ggml-backend-reg_default.o $(OBJS_FULL) $(CXX) $(CXXFLAGS) $^ -o $@ $(LDFLAGS) #window simple clinfo diff --git a/common/arg.cpp b/common/arg.cpp index 774894745..5dce9b63f 100644 --- a/common/arg.cpp +++ b/common/arg.cpp @@ -2212,14 +2212,14 @@ common_params_context common_params_parser_init(common_params & params, llama_ex ).set_examples({LLAMA_EXAMPLE_SERVER}).set_env("LLAMA_ARG_NO_CONT_BATCHING")); add_opt(common_arg( {"--mmproj"}, "FILE", - "path to a multimodal projector file. see examples/llava/README.md", + "path to a multimodal projector file. see tools/llava/README.md", [](common_params & params, const std::string & value) { params.mmproj.path = value; } ).set_examples(mmproj_examples)); add_opt(common_arg( {"--mmproj-url"}, "URL", - "URL to a multimodal projector file. see examples/llava/README.md", + "URL to a multimodal projector file. see tools/llava/README.md", [](common_params & params, const std::string & value) { params.mmproj.url = value; } diff --git a/common/common.h b/common/common.h index eaa8c35b4..c835be13f 100644 --- a/common/common.h +++ b/common/common.h @@ -336,7 +336,7 @@ struct common_params { common_conversation_mode conversation_mode = COMMON_CONVERSATION_MODE_AUTO; - // multimodal models (see examples/llava) + // multimodal models (see tools/llava) struct common_params_model mmproj; bool mmproj_use_gpu = true; // use GPU for multimodal model bool no_mmproj = false; // explicitly disable multimodal model @@ -410,8 +410,8 @@ struct common_params { int n_pca_batch = 100; int n_pca_iterations = 1000; dimre_method cvector_dimre_method = DIMRE_METHOD_PCA; - std::string cvector_positive_file = "examples/cvector-generator/positive.txt"; - std::string cvector_negative_file = "examples/cvector-generator/negative.txt"; + std::string cvector_positive_file = "tools/cvector-generator/positive.txt"; + std::string cvector_negative_file = "tools/cvector-generator/negative.txt"; bool spm_infill = false; // suffix/prefix/middle pattern for infill diff --git a/examples/gguf/gguf.cpp b/examples/gguf/gguf.cpp deleted file mode 100644 index f31989c8c..000000000 --- a/examples/gguf/gguf.cpp +++ /dev/null @@ -1,265 +0,0 @@ -#include "ggml.h" -#include "gguf.h" - -#include -#include -#include -#include - -#undef MIN -#undef MAX -#define MIN(a, b) ((a) < (b) ? (a) : (b)) -#define MAX(a, b) ((a) > (b) ? (a) : (b)) - -template -static std::string to_string(const T & val) { - std::stringstream ss; - ss << val; - return ss.str(); -} - -static bool gguf_ex_write(const std::string & fname) { - struct gguf_context * ctx = gguf_init_empty(); - - gguf_set_val_u8 (ctx, "some.parameter.uint8", 0x12); - gguf_set_val_i8 (ctx, "some.parameter.int8", -0x13); - gguf_set_val_u16 (ctx, "some.parameter.uint16", 0x1234); - gguf_set_val_i16 (ctx, "some.parameter.int16", -0x1235); - gguf_set_val_u32 (ctx, "some.parameter.uint32", 0x12345678); - gguf_set_val_i32 (ctx, "some.parameter.int32", -0x12345679); - gguf_set_val_f32 (ctx, "some.parameter.float32", 0.123456789f); - gguf_set_val_u64 (ctx, "some.parameter.uint64", 0x123456789abcdef0ull); - gguf_set_val_i64 (ctx, "some.parameter.int64", -0x123456789abcdef1ll); - gguf_set_val_f64 (ctx, "some.parameter.float64", 0.1234567890123456789); - gguf_set_val_bool(ctx, "some.parameter.bool", true); - gguf_set_val_str (ctx, "some.parameter.string", "hello world"); - - gguf_set_arr_data(ctx, "some.parameter.arr.i16", GGUF_TYPE_INT16, std::vector{ 1, 2, 3, 4, }.data(), 4); - gguf_set_arr_data(ctx, "some.parameter.arr.f32", GGUF_TYPE_FLOAT32, std::vector{ 3.145f, 2.718f, 1.414f, }.data(), 3); - gguf_set_arr_str (ctx, "some.parameter.arr.str", std::vector{ "hello", "world", "!" }.data(), 3); - - struct ggml_init_params params = { - /*.mem_size =*/ 128ull*1024ull*1024ull, - /*.mem_buffer =*/ NULL, - /*.no_alloc =*/ false, - }; - - struct ggml_context * ctx_data = ggml_init(params); - - const int n_tensors = 10; - - // tensor infos - for (int i = 0; i < n_tensors; ++i) { - const std::string name = "tensor_" + to_string(i); - - int64_t ne[GGML_MAX_DIMS] = { 1 }; - int32_t n_dims = rand() % GGML_MAX_DIMS + 1; - - for (int j = 0; j < n_dims; ++j) { - ne[j] = rand() % 10 + 1; - } - - struct ggml_tensor * cur = ggml_new_tensor(ctx_data, GGML_TYPE_F32, n_dims, ne); - ggml_set_name(cur, name.c_str()); - - { - float * data = (float *) cur->data; - for (int j = 0; j < ggml_nelements(cur); ++j) { - data[j] = 100 + i; - } - } - - gguf_add_tensor(ctx, cur); - } - - gguf_write_to_file(ctx, fname.c_str(), false); - - printf("%s: wrote file '%s;\n", __func__, fname.c_str()); - - ggml_free(ctx_data); - gguf_free(ctx); - - return true; -} - -// just read tensor info -static bool gguf_ex_read_0(const std::string & fname) { - struct gguf_init_params params = { - /*.no_alloc = */ false, - /*.ctx = */ NULL, - }; - - struct gguf_context * ctx = gguf_init_from_file(fname.c_str(), params); - - if (!ctx) { - fprintf(stderr, "%s: failed to load '%s'\n", __func__, fname.c_str()); - return false; - } - - printf("%s: version: %d\n", __func__, gguf_get_version(ctx)); - printf("%s: alignment: %zu\n", __func__, gguf_get_alignment(ctx)); - printf("%s: data offset: %zu\n", __func__, gguf_get_data_offset(ctx)); - - // kv - { - const int n_kv = gguf_get_n_kv(ctx); - - printf("%s: n_kv: %d\n", __func__, n_kv); - - for (int i = 0; i < n_kv; ++i) { - const char * key = gguf_get_key(ctx, i); - - printf("%s: kv[%d]: key = %s\n", __func__, i, key); - } - } - - // find kv string - { - const char * findkey = "some.parameter.string"; - - const int keyidx = gguf_find_key(ctx, findkey); - if (keyidx == -1) { - printf("%s: find key: %s not found.\n", __func__, findkey); - } else { - const char * key_value = gguf_get_val_str(ctx, keyidx); - printf("%s: find key: %s found, kv[%d] value = %s\n", __func__, findkey, keyidx, key_value); - } - } - - // tensor info - { - const int n_tensors = gguf_get_n_tensors(ctx); - - printf("%s: n_tensors: %d\n", __func__, n_tensors); - - for (int i = 0; i < n_tensors; ++i) { - const char * name = gguf_get_tensor_name (ctx, i); - const size_t size = gguf_get_tensor_size (ctx, i); - const size_t offset = gguf_get_tensor_offset(ctx, i); - - printf("%s: tensor[%d]: name = %s, size = %zu, offset = %zu\n", __func__, i, name, size, offset); - } - } - - gguf_free(ctx); - - return true; -} - -// read and create ggml_context containing the tensors and their data -static bool gguf_ex_read_1(const std::string & fname, bool check_data) { - struct ggml_context * ctx_data = NULL; - - struct gguf_init_params params = { - /*.no_alloc = */ false, - /*.ctx = */ &ctx_data, - }; - - struct gguf_context * ctx = gguf_init_from_file(fname.c_str(), params); - - printf("%s: version: %d\n", __func__, gguf_get_version(ctx)); - printf("%s: alignment: %zu\n", __func__, gguf_get_alignment(ctx)); - printf("%s: data offset: %zu\n", __func__, gguf_get_data_offset(ctx)); - - // kv - { - const int n_kv = gguf_get_n_kv(ctx); - - printf("%s: n_kv: %d\n", __func__, n_kv); - - for (int i = 0; i < n_kv; ++i) { - const char * key = gguf_get_key(ctx, i); - - printf("%s: kv[%d]: key = %s\n", __func__, i, key); - } - } - - // tensor info - { - const int n_tensors = gguf_get_n_tensors(ctx); - - printf("%s: n_tensors: %d\n", __func__, n_tensors); - - for (int i = 0; i < n_tensors; ++i) { - const char * name = gguf_get_tensor_name (ctx, i); - const size_t size = gguf_get_tensor_size (ctx, i); - const size_t offset = gguf_get_tensor_offset(ctx, i); - - printf("%s: tensor[%d]: name = %s, size = %zu, offset = %zu\n", __func__, i, name, size, offset); - } - } - - // data - { - const int n_tensors = gguf_get_n_tensors(ctx); - - for (int i = 0; i < n_tensors; ++i) { - printf("%s: reading tensor %d data\n", __func__, i); - - const char * name = gguf_get_tensor_name(ctx, i); - - struct ggml_tensor * cur = ggml_get_tensor(ctx_data, name); - - printf("%s: tensor[%d]: n_dims = %d, ne = (%d, %d, %d, %d), name = %s, data = %p\n", - __func__, i, ggml_n_dims(cur), int(cur->ne[0]), int(cur->ne[1]), int(cur->ne[2]), int(cur->ne[3]), cur->name, cur->data); - - // print first 10 elements - const float * data = (const float *) cur->data; - - printf("%s data[:10] : ", name); - for (int j = 0; j < MIN(10, ggml_nelements(cur)); ++j) { - printf("%f ", data[j]); - } - printf("\n\n"); - - // check data - if (check_data) { - const float * data = (const float *) cur->data; - for (int j = 0; j < ggml_nelements(cur); ++j) { - if (data[j] != 100 + i) { - fprintf(stderr, "%s: tensor[%d], data[%d]: found %f, expected %f\n", __func__, i, j, data[j], float(100 + i)); - gguf_free(ctx); - return false; - } - } - } - } - } - - printf("%s: ctx_data size: %zu\n", __func__, ggml_get_mem_size(ctx_data)); - - ggml_free(ctx_data); - gguf_free(ctx); - - return true; -} - -int main(int argc, char ** argv) { - if (argc < 3) { - printf("usage: %s data.gguf r|w [n]\n", argv[0]); - printf("r: read data.gguf file\n"); - printf("w: write data.gguf file\n"); - printf("n: no check of tensor data\n"); - return -1; - } - bool check_data = true; - if (argc == 4) { - check_data = false; - } - - srand(123456); - - const std::string fname(argv[1]); - const std::string mode (argv[2]); - - GGML_ASSERT((mode == "r" || mode == "w") && "mode must be r or w"); - - if (mode == "w") { - GGML_ASSERT(gguf_ex_write(fname) && "failed to write gguf file"); - } else if (mode == "r") { - GGML_ASSERT(gguf_ex_read_0(fname) && "failed to read gguf file"); - GGML_ASSERT(gguf_ex_read_1(fname, check_data) && "failed to read gguf file"); - } - - return 0; -} diff --git a/examples/server/public/index.html.gz b/examples/server/public/index.html.gz deleted file mode 100644 index 674e22757..000000000 Binary files a/examples/server/public/index.html.gz and /dev/null differ diff --git a/gpttype_adapter.cpp b/gpttype_adapter.cpp index cb5121bf5..d832aaa48 100644 --- a/gpttype_adapter.cpp +++ b/gpttype_adapter.cpp @@ -40,8 +40,8 @@ #include "neox_v2.cpp" #include "neox_v3.cpp" #include "mpt_v3.cpp" -#include "examples/llava/clip.h" -#include "examples/llava/llava.h" +#include "tools/llava/clip.h" +#include "tools/llava/llava.h" #include "common/common.h" //const diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt new file mode 100644 index 000000000..119d7c50a --- /dev/null +++ b/tools/CMakeLists.txt @@ -0,0 +1,39 @@ +# dependencies + +find_package(Threads REQUIRED) + +# third-party + +# ... + +# flags + +llama_add_compile_flags() + +# tools + +if (EMSCRIPTEN) +else() + add_subdirectory(batched-bench) + add_subdirectory(gguf-split) + add_subdirectory(imatrix) + add_subdirectory(llama-bench) + add_subdirectory(main) + add_subdirectory(perplexity) + add_subdirectory(quantize) + if (LLAMA_BUILD_SERVER) + add_subdirectory(server) + endif() + add_subdirectory(run) + add_subdirectory(tokenize) + add_subdirectory(tts) + if (NOT GGML_BACKEND_DL) + # these examples use the backends directly and cannot be built with dynamic loading + add_subdirectory(cvector-generator) + add_subdirectory(export-lora) + add_subdirectory(llava) + if (GGML_RPC) + add_subdirectory(rpc) + endif() + endif() +endif() diff --git a/examples/gguf-split/gguf-split.cpp b/tools/gguf-split/gguf-split.cpp similarity index 100% rename from examples/gguf-split/gguf-split.cpp rename to tools/gguf-split/gguf-split.cpp diff --git a/examples/gguf-split/tests.sh b/tools/gguf-split/tests.sh similarity index 100% rename from examples/gguf-split/tests.sh rename to tools/gguf-split/tests.sh diff --git a/examples/llava/README-quantize.md b/tools/llava/README-quantize.md similarity index 100% rename from examples/llava/README-quantize.md rename to tools/llava/README-quantize.md diff --git a/examples/llava/clip-impl.h b/tools/llava/clip-impl.h similarity index 100% rename from examples/llava/clip-impl.h rename to tools/llava/clip-impl.h diff --git a/examples/llava/clip.cpp b/tools/llava/clip.cpp similarity index 100% rename from examples/llava/clip.cpp rename to tools/llava/clip.cpp diff --git a/examples/llava/clip.h b/tools/llava/clip.h similarity index 100% rename from examples/llava/clip.h rename to tools/llava/clip.h diff --git a/examples/llava/convert_image_encoder_to_gguf.py b/tools/llava/convert_image_encoder_to_gguf.py similarity index 100% rename from examples/llava/convert_image_encoder_to_gguf.py rename to tools/llava/convert_image_encoder_to_gguf.py diff --git a/examples/llava/deprecation-warning.cpp b/tools/llava/deprecation-warning.cpp similarity index 100% rename from examples/llava/deprecation-warning.cpp rename to tools/llava/deprecation-warning.cpp diff --git a/examples/llava/glmedge-convert-image-encoder-to-gguf.py b/tools/llava/glmedge-convert-image-encoder-to-gguf.py similarity index 100% rename from examples/llava/glmedge-convert-image-encoder-to-gguf.py rename to tools/llava/glmedge-convert-image-encoder-to-gguf.py diff --git a/examples/llava/glmedge-surgery.py b/tools/llava/glmedge-surgery.py similarity index 100% rename from examples/llava/glmedge-surgery.py rename to tools/llava/glmedge-surgery.py diff --git a/examples/llava/llava.cpp b/tools/llava/llava.cpp similarity index 100% rename from examples/llava/llava.cpp rename to tools/llava/llava.cpp diff --git a/examples/llava/llava.h b/tools/llava/llava.h similarity index 100% rename from examples/llava/llava.h rename to tools/llava/llava.h diff --git a/examples/llava/llava_surgery.py b/tools/llava/llava_surgery.py similarity index 100% rename from examples/llava/llava_surgery.py rename to tools/llava/llava_surgery.py diff --git a/examples/llava/llava_surgery_v2.py b/tools/llava/llava_surgery_v2.py similarity index 100% rename from examples/llava/llava_surgery_v2.py rename to tools/llava/llava_surgery_v2.py diff --git a/examples/llava/minicpmv-convert-image-encoder-to-gguf.py b/tools/llava/minicpmv-convert-image-encoder-to-gguf.py similarity index 100% rename from examples/llava/minicpmv-convert-image-encoder-to-gguf.py rename to tools/llava/minicpmv-convert-image-encoder-to-gguf.py diff --git a/examples/llava/minicpmv-surgery.py b/tools/llava/minicpmv-surgery.py similarity index 100% rename from examples/llava/minicpmv-surgery.py rename to tools/llava/minicpmv-surgery.py diff --git a/examples/llava/mtmd-cli.cpp b/tools/llava/mtmd-cli.cpp similarity index 100% rename from examples/llava/mtmd-cli.cpp rename to tools/llava/mtmd-cli.cpp diff --git a/examples/llava/mtmd.cpp b/tools/llava/mtmd.cpp similarity index 100% rename from examples/llava/mtmd.cpp rename to tools/llava/mtmd.cpp diff --git a/examples/llava/mtmd.h b/tools/llava/mtmd.h similarity index 100% rename from examples/llava/mtmd.h rename to tools/llava/mtmd.h diff --git a/examples/llava/qwen2vl-test.cpp b/tools/llava/qwen2vl-test.cpp similarity index 100% rename from examples/llava/qwen2vl-test.cpp rename to tools/llava/qwen2vl-test.cpp diff --git a/examples/llava/requirements.txt b/tools/llava/requirements.txt similarity index 100% rename from examples/llava/requirements.txt rename to tools/llava/requirements.txt diff --git a/examples/llava/test-1.jpeg b/tools/llava/test-1.jpeg similarity index 100% rename from examples/llava/test-1.jpeg rename to tools/llava/test-1.jpeg diff --git a/examples/llava/tests.sh b/tools/llava/tests.sh similarity index 100% rename from examples/llava/tests.sh rename to tools/llava/tests.sh diff --git a/examples/main/main.cpp b/tools/main/main.cpp similarity index 100% rename from examples/main/main.cpp rename to tools/main/main.cpp diff --git a/examples/llava/quantclip.cpp b/tools/quantclip.cpp similarity index 100% rename from examples/llava/quantclip.cpp rename to tools/quantclip.cpp diff --git a/examples/quantize/README.md b/tools/quantize/README.md similarity index 100% rename from examples/quantize/README.md rename to tools/quantize/README.md diff --git a/examples/quantize/quantize.cpp b/tools/quantize/quantize.cpp similarity index 100% rename from examples/quantize/quantize.cpp rename to tools/quantize/quantize.cpp diff --git a/examples/quantize/tests.sh b/tools/quantize/tests.sh similarity index 100% rename from examples/quantize/tests.sh rename to tools/quantize/tests.sh diff --git a/examples/server/bench/bench.py b/tools/server/bench/bench.py similarity index 100% rename from examples/server/bench/bench.py rename to tools/server/bench/bench.py diff --git a/examples/server/bench/prometheus.yml b/tools/server/bench/prometheus.yml similarity index 100% rename from examples/server/bench/prometheus.yml rename to tools/server/bench/prometheus.yml diff --git a/examples/server/bench/requirements.txt b/tools/server/bench/requirements.txt similarity index 100% rename from examples/server/bench/requirements.txt rename to tools/server/bench/requirements.txt diff --git a/examples/server/bench/script.js b/tools/server/bench/script.js similarity index 100% rename from examples/server/bench/script.js rename to tools/server/bench/script.js diff --git a/examples/server/chat-llama2.sh b/tools/server/chat-llama2.sh similarity index 100% rename from examples/server/chat-llama2.sh rename to tools/server/chat-llama2.sh diff --git a/examples/server/chat.mjs b/tools/server/chat.mjs similarity index 100% rename from examples/server/chat.mjs rename to tools/server/chat.mjs diff --git a/examples/server/chat.sh b/tools/server/chat.sh similarity index 100% rename from examples/server/chat.sh rename to tools/server/chat.sh diff --git a/examples/server/httplib.h b/tools/server/httplib.h similarity index 100% rename from examples/server/httplib.h rename to tools/server/httplib.h diff --git a/tools/server/public/index.html.gz b/tools/server/public/index.html.gz new file mode 100644 index 000000000..6f760c39f Binary files /dev/null and b/tools/server/public/index.html.gz differ diff --git a/examples/server/public/loading.html b/tools/server/public/loading.html similarity index 100% rename from examples/server/public/loading.html rename to tools/server/public/loading.html diff --git a/examples/server/public_legacy/colorthemes.css b/tools/server/public_legacy/colorthemes.css similarity index 100% rename from examples/server/public_legacy/colorthemes.css rename to tools/server/public_legacy/colorthemes.css diff --git a/examples/server/public_legacy/completion.js b/tools/server/public_legacy/completion.js similarity index 100% rename from examples/server/public_legacy/completion.js rename to tools/server/public_legacy/completion.js diff --git a/examples/server/public_legacy/favicon.ico b/tools/server/public_legacy/favicon.ico similarity index 100% rename from examples/server/public_legacy/favicon.ico rename to tools/server/public_legacy/favicon.ico diff --git a/examples/server/public_legacy/index-new.html b/tools/server/public_legacy/index-new.html similarity index 100% rename from examples/server/public_legacy/index-new.html rename to tools/server/public_legacy/index-new.html diff --git a/examples/server/public_legacy/index.html b/tools/server/public_legacy/index.html similarity index 100% rename from examples/server/public_legacy/index.html rename to tools/server/public_legacy/index.html diff --git a/examples/server/public_legacy/index.js b/tools/server/public_legacy/index.js similarity index 100% rename from examples/server/public_legacy/index.js rename to tools/server/public_legacy/index.js diff --git a/examples/server/public_legacy/json-schema-to-grammar.mjs b/tools/server/public_legacy/json-schema-to-grammar.mjs similarity index 100% rename from examples/server/public_legacy/json-schema-to-grammar.mjs rename to tools/server/public_legacy/json-schema-to-grammar.mjs diff --git a/examples/server/public_legacy/loading.html b/tools/server/public_legacy/loading.html similarity index 100% rename from examples/server/public_legacy/loading.html rename to tools/server/public_legacy/loading.html diff --git a/examples/server/public_legacy/prompt-formats.js b/tools/server/public_legacy/prompt-formats.js similarity index 100% rename from examples/server/public_legacy/prompt-formats.js rename to tools/server/public_legacy/prompt-formats.js diff --git a/examples/server/public_legacy/style.css b/tools/server/public_legacy/style.css similarity index 100% rename from examples/server/public_legacy/style.css rename to tools/server/public_legacy/style.css diff --git a/examples/server/public_legacy/system-prompts.js b/tools/server/public_legacy/system-prompts.js similarity index 100% rename from examples/server/public_legacy/system-prompts.js rename to tools/server/public_legacy/system-prompts.js diff --git a/examples/server/public_legacy/theme-beeninorder.css b/tools/server/public_legacy/theme-beeninorder.css similarity index 100% rename from examples/server/public_legacy/theme-beeninorder.css rename to tools/server/public_legacy/theme-beeninorder.css diff --git a/examples/server/public_legacy/theme-ketivah.css b/tools/server/public_legacy/theme-ketivah.css similarity index 100% rename from examples/server/public_legacy/theme-ketivah.css rename to tools/server/public_legacy/theme-ketivah.css diff --git a/examples/server/public_legacy/theme-mangotango.css b/tools/server/public_legacy/theme-mangotango.css similarity index 100% rename from examples/server/public_legacy/theme-mangotango.css rename to tools/server/public_legacy/theme-mangotango.css diff --git a/examples/server/public_legacy/theme-playground.css b/tools/server/public_legacy/theme-playground.css similarity index 100% rename from examples/server/public_legacy/theme-playground.css rename to tools/server/public_legacy/theme-playground.css diff --git a/examples/server/public_legacy/theme-polarnight.css b/tools/server/public_legacy/theme-polarnight.css similarity index 100% rename from examples/server/public_legacy/theme-polarnight.css rename to tools/server/public_legacy/theme-polarnight.css diff --git a/examples/server/public_legacy/theme-snowstorm.css b/tools/server/public_legacy/theme-snowstorm.css similarity index 100% rename from examples/server/public_legacy/theme-snowstorm.css rename to tools/server/public_legacy/theme-snowstorm.css diff --git a/examples/server/public_simplechat/datautils.mjs b/tools/server/public_simplechat/datautils.mjs similarity index 100% rename from examples/server/public_simplechat/datautils.mjs rename to tools/server/public_simplechat/datautils.mjs diff --git a/examples/server/public_simplechat/index.html b/tools/server/public_simplechat/index.html similarity index 100% rename from examples/server/public_simplechat/index.html rename to tools/server/public_simplechat/index.html diff --git a/examples/server/public_simplechat/simplechat.css b/tools/server/public_simplechat/simplechat.css similarity index 100% rename from examples/server/public_simplechat/simplechat.css rename to tools/server/public_simplechat/simplechat.css diff --git a/examples/server/public_simplechat/simplechat.js b/tools/server/public_simplechat/simplechat.js similarity index 100% rename from examples/server/public_simplechat/simplechat.js rename to tools/server/public_simplechat/simplechat.js diff --git a/examples/server/public_simplechat/simplechat_screens.webp b/tools/server/public_simplechat/simplechat_screens.webp similarity index 100% rename from examples/server/public_simplechat/simplechat_screens.webp rename to tools/server/public_simplechat/simplechat_screens.webp diff --git a/examples/server/public_simplechat/ui.mjs b/tools/server/public_simplechat/ui.mjs similarity index 100% rename from examples/server/public_simplechat/ui.mjs rename to tools/server/public_simplechat/ui.mjs diff --git a/examples/server/server.cpp b/tools/server/server.cpp similarity index 100% rename from examples/server/server.cpp rename to tools/server/server.cpp diff --git a/examples/server/tests/.gitignore b/tools/server/tests/.gitignore similarity index 100% rename from examples/server/tests/.gitignore rename to tools/server/tests/.gitignore diff --git a/examples/server/tests/conftest.py b/tools/server/tests/conftest.py similarity index 100% rename from examples/server/tests/conftest.py rename to tools/server/tests/conftest.py diff --git a/examples/server/tests/pytest.ini b/tools/server/tests/pytest.ini similarity index 100% rename from examples/server/tests/pytest.ini rename to tools/server/tests/pytest.ini diff --git a/examples/server/tests/requirements.txt b/tools/server/tests/requirements.txt similarity index 100% rename from examples/server/tests/requirements.txt rename to tools/server/tests/requirements.txt diff --git a/examples/server/tests/tests.sh b/tools/server/tests/tests.sh similarity index 100% rename from examples/server/tests/tests.sh rename to tools/server/tests/tests.sh diff --git a/examples/server/tests/unit/test_basic.py b/tools/server/tests/unit/test_basic.py similarity index 100% rename from examples/server/tests/unit/test_basic.py rename to tools/server/tests/unit/test_basic.py diff --git a/examples/server/tests/unit/test_chat_completion.py b/tools/server/tests/unit/test_chat_completion.py similarity index 100% rename from examples/server/tests/unit/test_chat_completion.py rename to tools/server/tests/unit/test_chat_completion.py diff --git a/examples/server/tests/unit/test_completion.py b/tools/server/tests/unit/test_completion.py similarity index 100% rename from examples/server/tests/unit/test_completion.py rename to tools/server/tests/unit/test_completion.py diff --git a/examples/server/tests/unit/test_ctx_shift.py b/tools/server/tests/unit/test_ctx_shift.py similarity index 100% rename from examples/server/tests/unit/test_ctx_shift.py rename to tools/server/tests/unit/test_ctx_shift.py diff --git a/examples/server/tests/unit/test_embedding.py b/tools/server/tests/unit/test_embedding.py similarity index 100% rename from examples/server/tests/unit/test_embedding.py rename to tools/server/tests/unit/test_embedding.py diff --git a/examples/server/tests/unit/test_infill.py b/tools/server/tests/unit/test_infill.py similarity index 100% rename from examples/server/tests/unit/test_infill.py rename to tools/server/tests/unit/test_infill.py diff --git a/examples/server/tests/unit/test_lora.py b/tools/server/tests/unit/test_lora.py similarity index 100% rename from examples/server/tests/unit/test_lora.py rename to tools/server/tests/unit/test_lora.py diff --git a/examples/server/tests/unit/test_rerank.py b/tools/server/tests/unit/test_rerank.py similarity index 100% rename from examples/server/tests/unit/test_rerank.py rename to tools/server/tests/unit/test_rerank.py diff --git a/examples/server/tests/unit/test_security.py b/tools/server/tests/unit/test_security.py similarity index 100% rename from examples/server/tests/unit/test_security.py rename to tools/server/tests/unit/test_security.py diff --git a/examples/server/tests/unit/test_slot_save.py b/tools/server/tests/unit/test_slot_save.py similarity index 100% rename from examples/server/tests/unit/test_slot_save.py rename to tools/server/tests/unit/test_slot_save.py diff --git a/examples/server/tests/unit/test_speculative.py b/tools/server/tests/unit/test_speculative.py similarity index 100% rename from examples/server/tests/unit/test_speculative.py rename to tools/server/tests/unit/test_speculative.py diff --git a/examples/server/tests/unit/test_tokenize.py b/tools/server/tests/unit/test_tokenize.py similarity index 100% rename from examples/server/tests/unit/test_tokenize.py rename to tools/server/tests/unit/test_tokenize.py diff --git a/examples/server/tests/unit/test_tool_call.py b/tools/server/tests/unit/test_tool_call.py similarity index 100% rename from examples/server/tests/unit/test_tool_call.py rename to tools/server/tests/unit/test_tool_call.py diff --git a/examples/server/tests/utils.py b/tools/server/tests/utils.py similarity index 100% rename from examples/server/tests/utils.py rename to tools/server/tests/utils.py diff --git a/examples/server/themes/buttons-top/buttons_top.png b/tools/server/themes/buttons-top/buttons_top.png similarity index 100% rename from examples/server/themes/buttons-top/buttons_top.png rename to tools/server/themes/buttons-top/buttons_top.png diff --git a/examples/server/themes/buttons-top/favicon.ico b/tools/server/themes/buttons-top/favicon.ico similarity index 100% rename from examples/server/themes/buttons-top/favicon.ico rename to tools/server/themes/buttons-top/favicon.ico diff --git a/examples/server/themes/buttons-top/index.html b/tools/server/themes/buttons-top/index.html similarity index 100% rename from examples/server/themes/buttons-top/index.html rename to tools/server/themes/buttons-top/index.html diff --git a/examples/server/themes/wild/favicon.ico b/tools/server/themes/wild/favicon.ico similarity index 100% rename from examples/server/themes/wild/favicon.ico rename to tools/server/themes/wild/favicon.ico diff --git a/examples/server/themes/wild/index.html b/tools/server/themes/wild/index.html similarity index 100% rename from examples/server/themes/wild/index.html rename to tools/server/themes/wild/index.html diff --git a/examples/server/themes/wild/llama_cpp.png b/tools/server/themes/wild/llama_cpp.png similarity index 100% rename from examples/server/themes/wild/llama_cpp.png rename to tools/server/themes/wild/llama_cpp.png diff --git a/examples/server/themes/wild/llamapattern.png b/tools/server/themes/wild/llamapattern.png similarity index 100% rename from examples/server/themes/wild/llamapattern.png rename to tools/server/themes/wild/llamapattern.png diff --git a/examples/server/themes/wild/wild.png b/tools/server/themes/wild/wild.png similarity index 100% rename from examples/server/themes/wild/wild.png rename to tools/server/themes/wild/wild.png diff --git a/examples/server/utils.hpp b/tools/server/utils.hpp similarity index 100% rename from examples/server/utils.hpp rename to tools/server/utils.hpp diff --git a/examples/server/webui/.gitignore b/tools/server/webui/.gitignore similarity index 100% rename from examples/server/webui/.gitignore rename to tools/server/webui/.gitignore diff --git a/examples/server/webui/.prettierignore b/tools/server/webui/.prettierignore similarity index 100% rename from examples/server/webui/.prettierignore rename to tools/server/webui/.prettierignore diff --git a/examples/server/webui/eslint.config.js b/tools/server/webui/eslint.config.js similarity index 100% rename from examples/server/webui/eslint.config.js rename to tools/server/webui/eslint.config.js diff --git a/examples/server/webui/index.html b/tools/server/webui/index.html similarity index 100% rename from examples/server/webui/index.html rename to tools/server/webui/index.html diff --git a/examples/server/webui/package-lock.json b/tools/server/webui/package-lock.json similarity index 100% rename from examples/server/webui/package-lock.json rename to tools/server/webui/package-lock.json diff --git a/examples/server/webui/package.json b/tools/server/webui/package.json similarity index 100% rename from examples/server/webui/package.json rename to tools/server/webui/package.json diff --git a/examples/server/webui/postcss.config.js b/tools/server/webui/postcss.config.js similarity index 100% rename from examples/server/webui/postcss.config.js rename to tools/server/webui/postcss.config.js diff --git a/examples/server/webui/public/demo-conversation.json b/tools/server/webui/public/demo-conversation.json similarity index 100% rename from examples/server/webui/public/demo-conversation.json rename to tools/server/webui/public/demo-conversation.json diff --git a/examples/server/webui/src/App.tsx b/tools/server/webui/src/App.tsx similarity index 100% rename from examples/server/webui/src/App.tsx rename to tools/server/webui/src/App.tsx diff --git a/examples/server/webui/src/Config.ts b/tools/server/webui/src/Config.ts similarity index 100% rename from examples/server/webui/src/Config.ts rename to tools/server/webui/src/Config.ts diff --git a/examples/server/webui/src/components/CanvasPyInterpreter.tsx b/tools/server/webui/src/components/CanvasPyInterpreter.tsx similarity index 100% rename from examples/server/webui/src/components/CanvasPyInterpreter.tsx rename to tools/server/webui/src/components/CanvasPyInterpreter.tsx diff --git a/examples/server/webui/src/components/ChatMessage.tsx b/tools/server/webui/src/components/ChatMessage.tsx similarity index 100% rename from examples/server/webui/src/components/ChatMessage.tsx rename to tools/server/webui/src/components/ChatMessage.tsx diff --git a/examples/server/webui/src/components/ChatScreen.tsx b/tools/server/webui/src/components/ChatScreen.tsx similarity index 100% rename from examples/server/webui/src/components/ChatScreen.tsx rename to tools/server/webui/src/components/ChatScreen.tsx diff --git a/examples/server/webui/src/components/Header.tsx b/tools/server/webui/src/components/Header.tsx similarity index 100% rename from examples/server/webui/src/components/Header.tsx rename to tools/server/webui/src/components/Header.tsx diff --git a/examples/server/webui/src/components/MarkdownDisplay.tsx b/tools/server/webui/src/components/MarkdownDisplay.tsx similarity index 100% rename from examples/server/webui/src/components/MarkdownDisplay.tsx rename to tools/server/webui/src/components/MarkdownDisplay.tsx diff --git a/examples/server/webui/src/components/SettingDialog.tsx b/tools/server/webui/src/components/SettingDialog.tsx similarity index 99% rename from examples/server/webui/src/components/SettingDialog.tsx rename to tools/server/webui/src/components/SettingDialog.tsx index b65e73ae1..b0044d254 100644 --- a/examples/server/webui/src/components/SettingDialog.tsx +++ b/tools/server/webui/src/components/SettingDialog.tsx @@ -196,7 +196,7 @@ const SETTING_SECTIONS: SettingSection[] = [ label: ( <> Custom JSON config (For more info, refer to{' '} - + server documentation ) diff --git a/examples/server/webui/src/components/Sidebar.tsx b/tools/server/webui/src/components/Sidebar.tsx similarity index 100% rename from examples/server/webui/src/components/Sidebar.tsx rename to tools/server/webui/src/components/Sidebar.tsx diff --git a/examples/server/webui/src/components/useChatTextarea.ts b/tools/server/webui/src/components/useChatTextarea.ts similarity index 100% rename from examples/server/webui/src/components/useChatTextarea.ts rename to tools/server/webui/src/components/useChatTextarea.ts diff --git a/examples/server/webui/src/index.scss b/tools/server/webui/src/index.scss similarity index 100% rename from examples/server/webui/src/index.scss rename to tools/server/webui/src/index.scss diff --git a/examples/server/webui/src/main.tsx b/tools/server/webui/src/main.tsx similarity index 100% rename from examples/server/webui/src/main.tsx rename to tools/server/webui/src/main.tsx diff --git a/examples/server/webui/src/utils/app.context.tsx b/tools/server/webui/src/utils/app.context.tsx similarity index 100% rename from examples/server/webui/src/utils/app.context.tsx rename to tools/server/webui/src/utils/app.context.tsx diff --git a/examples/server/webui/src/utils/common.tsx b/tools/server/webui/src/utils/common.tsx similarity index 100% rename from examples/server/webui/src/utils/common.tsx rename to tools/server/webui/src/utils/common.tsx diff --git a/examples/server/webui/src/utils/llama-vscode.ts b/tools/server/webui/src/utils/llama-vscode.ts similarity index 100% rename from examples/server/webui/src/utils/llama-vscode.ts rename to tools/server/webui/src/utils/llama-vscode.ts diff --git a/examples/server/webui/src/utils/misc.ts b/tools/server/webui/src/utils/misc.ts similarity index 100% rename from examples/server/webui/src/utils/misc.ts rename to tools/server/webui/src/utils/misc.ts diff --git a/examples/server/webui/src/utils/storage.ts b/tools/server/webui/src/utils/storage.ts similarity index 100% rename from examples/server/webui/src/utils/storage.ts rename to tools/server/webui/src/utils/storage.ts diff --git a/examples/server/webui/src/utils/types.ts b/tools/server/webui/src/utils/types.ts similarity index 100% rename from examples/server/webui/src/utils/types.ts rename to tools/server/webui/src/utils/types.ts diff --git a/examples/server/webui/src/vite-env.d.ts b/tools/server/webui/src/vite-env.d.ts similarity index 100% rename from examples/server/webui/src/vite-env.d.ts rename to tools/server/webui/src/vite-env.d.ts diff --git a/examples/server/webui/tailwind.config.js b/tools/server/webui/tailwind.config.js similarity index 100% rename from examples/server/webui/tailwind.config.js rename to tools/server/webui/tailwind.config.js diff --git a/examples/server/webui/tsconfig.app.json b/tools/server/webui/tsconfig.app.json similarity index 100% rename from examples/server/webui/tsconfig.app.json rename to tools/server/webui/tsconfig.app.json diff --git a/examples/server/webui/tsconfig.json b/tools/server/webui/tsconfig.json similarity index 100% rename from examples/server/webui/tsconfig.json rename to tools/server/webui/tsconfig.json diff --git a/examples/server/webui/tsconfig.node.json b/tools/server/webui/tsconfig.node.json similarity index 100% rename from examples/server/webui/tsconfig.node.json rename to tools/server/webui/tsconfig.node.json diff --git a/examples/server/webui/vite.config.ts b/tools/server/webui/vite.config.ts similarity index 100% rename from examples/server/webui/vite.config.ts rename to tools/server/webui/vite.config.ts diff --git a/examples/tts/CMakeLists.txt b/tools/tts/CMakeLists.txt similarity index 100% rename from examples/tts/CMakeLists.txt rename to tools/tts/CMakeLists.txt diff --git a/examples/tts/README.md b/tools/tts/README.md similarity index 96% rename from examples/tts/README.md rename to tools/tts/README.md index 4509763c6..557014aeb 100644 --- a/examples/tts/README.md +++ b/tools/tts/README.md @@ -45,7 +45,7 @@ $ popd This model file is PyTorch checkpoint (.ckpt) and we first need to convert it to huggingface format: ```console -(venv) python examples/tts/convert_pt_to_hf.py \ +(venv) python tools/tts/convert_pt_to_hf.py \ models/WavTokenizer-large-speech-75token/wavtokenizer_large_speech_320_24k.ckpt ... Model has been successfully converted and saved to models/WavTokenizer-large-speech-75token/model.safetensors @@ -105,7 +105,7 @@ $ source venv/bin/activate And then run the python script using: ```conole -(venv) python ./examples/tts/tts-outetts.py http://localhost:8020 http://localhost:8021 "Hello world" +(venv) python ./tools/tts/tts-outetts.py http://localhost:8020 http://localhost:8021 "Hello world" spectrogram generated: n_codes: 90, n_embd: 1282 converting to audio ... audio generated: 28800 samples diff --git a/examples/tts/convert_pt_to_hf.py b/tools/tts/convert_pt_to_hf.py similarity index 100% rename from examples/tts/convert_pt_to_hf.py rename to tools/tts/convert_pt_to_hf.py diff --git a/examples/tts/tts-outetts.py b/tools/tts/tts-outetts.py similarity index 100% rename from examples/tts/tts-outetts.py rename to tools/tts/tts-outetts.py diff --git a/examples/tts/tts.cpp b/tools/tts/tts.cpp similarity index 100% rename from examples/tts/tts.cpp rename to tools/tts/tts.cpp