Device and prerequisites
- An iPhone, iOS 17 or later, with Developer Mode enabled.
- An Apple Silicon Mac with Xcode installed (the project uses Swift tools 6.1).
- An Apple Developer Team configured for code signing in Xcode.
- Git and Python 3.10+. Python is used only to download models and convert 35B.
1
Get the source and prepare the tools
Run in a Mac terminal:Run the subsequent commands in the
Edge0/ios directory. You can prepare 8B only, 35B only, or both.2
Prepare the model
The contents of the Each step should complete successfully;
Models/ directory are bundled into the app at build time. Place the model there before building.Using 8B
8B can be bundled as downloaded:Using 35B
35B requires a file-layout conversion to improve model-loading performance on iPhone. The conversion reorganizes the files without changing the model weights. Store the original download incheckpoints/ and write the converted files to Models/repacked/:verify checks the conversion result. If any step reports an error, resolve it before continuing.Keep the original download outside Models/ so it is not bundled into the app again.3
Configure signing in Xcode and install
- Open
Edge0PhoneProbe.xcodeproj. - Select the Edge0Phone target.
- In Signing & Capabilities, replace
com.example.edge0phonein the Bundle Identifier with your own unique identifier. - Select your Apple Developer Team.
- Connect the iPhone, confirm the phone trusts this Mac, and confirm Developer Mode is enabled.
- Select the iPhone as the run target and click Run.
4
Select a model and start chatting
- Open the app.
- Select Edge0 8B or Edge0 35B.
- Wait for the model to finish preparing.
- Enter a question, or tap one of the example prompts in the interface.
The app shows Not included
This means the model was not bundled into the currently installed app. Check:- Whether 8B is at
Models/Edge0-8B-A1B-preview/. - Whether 35B completed all conversion steps and is at
Models/repacked/. - Whether you rebuilt and reinstalled the app after adding the model.
Models/ directory still builds successfully, but the app will contain no selectable model.