llama.cpp/examples
Daniel Bevenius a057897ad4
llama : add xcframework build script (#11996)
* llama : add xcframework build script

This commit adds a script to build an XCFramework for Apple
ios, macos, visionos, and tvos platforms.

The generated XCFramework can then be added to a project and used in
the same way as a regular framework. The llama.swiftui example project
has been updated to use the XCFramework and can be started using the
following command:
```console
$ open examples/llama.swiftui/llama.swiftui.xcodeproj/
```

Refs: https://github.com/ggml-org/llama.cpp/issues/10747

* examples : remove llama.cpp (source dir ref) from project.pbxproj

This commit removes the reference to llama.cpp from the project.pbxproj
file since Package.swift has been removed.

* ci : updated build.yml to use build-xcframework.sh

* ci : add xcframework build to github releases

This commit adds the ability to create a GitHub release with the
xcframework build artifact.

* scripts : add apple app validation scripts

This commit adds scripts that can validate the iOS, macOS, tvOS, and
VisionOS applications. The scripts create a simple test app project,
copy the llama.xcframework to the test project, build and archive the
app, create an IPA from the archive, and validate the IPA using altool.

The motivation for this is to provide some basic validation and
hopefully avoid having to manually validate apps in Xcode.

* llama : remove Package.swift

This commit removes the Package.swift file, as we are now building an
XCFramework for the project.

* llama : remove Sources and spm-headers directories

* llama : use TargetConditionals.h for visionOS/tvOS
2025-03-05 06:30:31 +01:00
..
batched llama : add llama_vocab, functions -> methods, naming (#11110) 2025-01-12 11:32:42 +02:00
batched-bench llama : add llama_vocab, functions -> methods, naming (#11110) 2025-01-12 11:32:42 +02:00
batched.swift swift : fix llama-vocab api usage (#11645) 2025-02-04 13:15:24 +02:00
convert-llama2c-to-ggml llama : add llama_vocab, functions -> methods, naming (#11110) 2025-01-12 11:32:42 +02:00
cvector-generator repo : update links to new url (#11886) 2025-02-15 16:40:57 +02:00
deprecation-warning Update deprecation-warning.cpp (#10619) 2024-12-04 23:19:20 +01:00
embedding ggml : portability fixes for VS 2017 (#12150) 2025-03-04 18:53:26 +02:00
eval-callback llama : add llama_vocab, functions -> methods, naming (#11110) 2025-01-12 11:32:42 +02:00
export-lora export-lora : fix tok_embd tensor (#11330) 2025-01-21 14:07:12 +01:00
gbnf-validator Tool call support (generic + native for Llama, Functionary, Hermes, Mistral, Firefunction, DeepSeek) w/ lazy grammars (#9639) 2025-01-30 19:13:58 +00:00
gen-docs ggml : move AMX to the CPU backend (#10570) 2024-11-29 21:54:58 +01:00
gguf GGUF: C++ refactor, backend support, misc fixes (#11030) 2025-01-07 18:01:58 +01:00
gguf-hash GGUF: C++ refactor, backend support, misc fixes (#11030) 2025-01-07 18:01:58 +01:00
gguf-split ci : use -no-cnv in gguf-split tests (#11254) 2025-01-15 18:28:35 +02:00
gritlm llama : add llama_vocab, functions -> methods, naming (#11110) 2025-01-12 11:32:42 +02:00
imatrix examples: fix typo in imatrix/README.md (#11884) 2025-02-15 21:03:30 +02:00
infill llama : add llama_vocab, functions -> methods, naming (#11110) 2025-01-12 11:32:42 +02:00
jeopardy build: rename main → llama-cli, server → llama-server, llava-cli → llama-llava-cli, etc... (#7809) 2024-06-13 00:41:52 +01:00
llama-bench llama-bench : fix unexpected global variable initialize sequence issue (#11832) 2025-02-14 02:13:43 +01:00
llama.android repo : update links to new url (#11886) 2025-02-15 16:40:57 +02:00
llama.swiftui llama : add xcframework build script (#11996) 2025-03-05 06:30:31 +01:00
llava Update granite vision docs for 3.2 model (#12105) 2025-02-28 11:31:47 +00:00
lookahead ggml : portability fixes for VS 2017 (#12150) 2025-03-04 18:53:26 +02:00
lookup repo : update links to new url (#11886) 2025-02-15 16:40:57 +02:00
main main: allow preloading conversation with -p and add -st / --single-turn (#12145) 2025-03-04 12:19:39 -04:00
parallel ggml : portability fixes for VS 2017 (#12150) 2025-03-04 18:53:26 +02:00
passkey ggml : portability fixes for VS 2017 (#12150) 2025-03-04 18:53:26 +02:00
perplexity Fix: Compile failure due to Microsoft STL breaking change (#11836) 2025-02-12 21:36:11 +01:00
quantize ggml : portability fixes for VS 2017 (#12150) 2025-03-04 18:53:26 +02:00
quantize-stats llama : add llama_vocab, functions -> methods, naming (#11110) 2025-01-12 11:32:42 +02:00
retrieval repo : update links to new url (#11886) 2025-02-15 16:40:57 +02:00
rpc rpc-server : add support for the SYCL backend (#10934) 2024-12-23 10:39:30 +02:00
run Adding UTF-8 support to llama.cpp (#12111) 2025-03-03 12:44:56 +00:00
save-load-state llama : add llama_vocab, functions -> methods, naming (#11110) 2025-01-12 11:32:42 +02:00
server server: fix deadly typo in response_format.json_schema.schema handling (#12168) 2025-03-04 08:24:07 +02:00
simple llama : add llama_vocab, functions -> methods, naming (#11110) 2025-01-12 11:32:42 +02:00
simple-chat Add Jinja template support (#11016) 2025-01-21 13:18:51 +00:00
simple-cmake-pkg repo : update links to new url (#11886) 2025-02-15 16:40:57 +02:00
speculative repo : update links to new url (#11886) 2025-02-15 16:40:57 +02:00
speculative-simple llama : add llama_vocab, functions -> methods, naming (#11110) 2025-01-12 11:32:42 +02:00
sycl [SYCL] Optimize mul_mat for Q4_0 on Intel GPU (#12035) 2025-02-24 22:33:23 +08:00
tokenize llama : add llama_vocab, functions -> methods, naming (#11110) 2025-01-12 11:32:42 +02:00
tts ggml : portability fixes for VS 2017 (#12150) 2025-03-04 18:53:26 +02:00
chat-13B.bat Create chat-13B.bat (#592) 2023-03-29 20:21:09 +03:00
chat-13B.sh build: rename main → llama-cli, server → llama-server, llava-cli → llama-llava-cli, etc... (#7809) 2024-06-13 00:41:52 +01:00
chat-persistent.sh scripts : fix pattern and get n_tokens in one go (#10221) 2024-11-09 09:06:54 +02:00
chat-vicuna.sh build: rename main → llama-cli, server → llama-server, llava-cli → llama-llava-cli, etc... (#7809) 2024-06-13 00:41:52 +01:00
chat.sh build: rename main → llama-cli, server → llama-server, llava-cli → llama-llava-cli, etc... (#7809) 2024-06-13 00:41:52 +01:00
CMakeLists.txt tts : add OuteTTS support (#10784) 2024-12-18 19:27:21 +02:00
convert_legacy_llama.py metadata: Detailed Dataset Authorship Metadata (#8875) 2024-11-13 21:10:38 +11:00
json_schema_pydantic_example.py py : type-check all Python scripts with Pyright (#8341) 2024-07-07 15:04:39 -04:00
json_schema_to_grammar.py grammar : fix JSON Schema for string regex with top-level alt. (#9903) 2024-10-16 19:03:24 +03:00
llama.vim repo : update links to new url (#11886) 2025-02-15 16:40:57 +02:00
llm.vim llm.vim : stop generation at multiple linebreaks, bind to <F2> (#2879) 2023-08-30 09:50:55 +03:00
Miku.sh build: rename main → llama-cli, server → llama-server, llava-cli → llama-llava-cli, etc... (#7809) 2024-06-13 00:41:52 +01:00
pydantic_models_to_grammar.py pydantic : replace uses of __annotations__ with get_type_hints (#8474) 2024-07-14 19:51:21 -04:00
pydantic_models_to_grammar_examples.py repo : update links to new url (#11886) 2025-02-15 16:40:57 +02:00
reason-act.sh build: rename main → llama-cli, server → llama-server, llava-cli → llama-llava-cli, etc... (#7809) 2024-06-13 00:41:52 +01:00
regex_to_grammar.py py : switch to snake_case (#8305) 2024-07-05 07:53:33 +03:00
server-llama2-13B.sh build: rename main → llama-cli, server → llama-server, llava-cli → llama-llava-cli, etc... (#7809) 2024-06-13 00:41:52 +01:00
server_embd.py py : type-check all Python scripts with Pyright (#8341) 2024-07-07 15:04:39 -04:00
ts-type-to-grammar.sh JSON schema conversion: ️ faster repetitions, min/maxLength for strings, cap number length (#6555) 2024-04-12 19:43:38 +01:00