Georgi Gerganov 745aa5319b llama : deprecate llama_kv_self_ API (#14030) 7 luni în urmă
..
llama.cpp.swift 745aa5319b llama : deprecate llama_kv_self_ API (#14030) 7 luni în urmă
llama.swiftui de8b5a3624 llama.swiftui : add "Done" dismiss button to help view (#11998) 10 luni în urmă
llama.swiftui.xcodeproj a057897ad4 llama : add xcframework build script (#11996) 10 luni în urmă
.gitignore 800a489e4a llama.swiftui : add bench functionality (#4483) 2 ani în urmă
README.md 80a02aa858 llama.swiftui : fix xcframework dir in README [no ci] (#12353) 10 luni în urmă

README.md

llama.cpp/examples/llama.swiftui

Local inference of llama.cpp on an iPhone. This is a sample app that can be used as a starting point for more advanced projects.

For usage instructions and performance stats, check the following discussion: https://github.com/ggml-org/llama.cpp/discussions/4508

Building

First llama.cpp need to be built and a XCFramework needs to be created. This can be done by running the following script from the llama.cpp project root:

$ ./build-xcframework.sh

Open llama.swiftui.xcodeproj project in Xcode and you should be able to build and run the app on a simulator or a real device.

To use the framework with a different project, the XCFramework can be added to the project by adding build-apple/llama.xcframework by dragging and dropping it into the project navigator, or by manually selecting the framework in the "Frameworks, Libraries, and Embedded Content" section of the project settings.

image

Video demonstration:

https://github.com/bachittle/llama.cpp/assets/39804642/e290827a-4edb-4093-9642-2a5e399ec545