Han Yin
69f2bd62f9
UI: replace ugly optional as casts in AppScaffold with extension functions
2025-10-28 11:39:17 -07:00
Han Yin
e269da655f
UI: combine TopBarConfig and BottomBarConfig into each route's ScaffoldConfig
2025-10-28 11:39:17 -07:00
Han Yin
225c5435c5
UI: refactor BottomBarConfig.ModelsManagement APIs
2025-10-28 11:39:17 -07:00
Han Yin
63fc56d603
UI: centralize the AppScaffold and modularize its configs
2025-10-28 11:39:17 -07:00
Han Yin
72e97b93c5
feature: check for available space before copying local model
2025-10-28 11:39:16 -07:00
Han Yin
65d4a57a8b
LLama: refactor loadModel by splitting the system prompt setting into a separate method
2025-10-28 11:39:16 -07:00
Han Yin
9f77155535
VM: handle the cancellation of ongoing token generation
2025-10-28 11:39:16 -07:00
Han Yin
46859c10f0
LLama: update engine state after handling the cancellation of sendUserPrompt
2025-10-28 11:39:16 -07:00
Han Yin
06448a60a5
UI: update UI ongoing model import's cancellation
2025-10-28 11:39:16 -07:00
Han Yin
9ba74a9d3d
data: allow canceling the ongoing model import
2025-10-28 11:39:16 -07:00
Han Yin
d70b8fe323
core: swap in LLamaAndroid and mark stub engine for testing only
2025-10-28 11:39:16 -07:00
Han Yin
c2426a42e5
UI: unify Model Card components
2025-10-28 11:39:16 -07:00
Han Yin
434933f5b3
UI: show model card in Conversation screen
2025-10-28 11:39:16 -07:00
Han Yin
9769467723
UI: show model card in Model Loading screen
2025-10-28 11:39:16 -07:00
Han Yin
9cfa74f754
core: break down InferenceManager due to Interface Segregation Principle
2025-10-28 11:39:16 -07:00
Han Yin
286ed05f13
vm: merge SystemPromptViewModel into ModelLoadingViewModel
2025-10-28 11:39:16 -07:00
Han Yin
23d411d86e
vm: split mono MainViewModel into separate individual ViewModels
2025-10-28 11:39:16 -07:00
Han Yin
32d778bb8e
core: extract conversation and benchmark logics into InferenceManager; add logs and missing state updates in stub InferenceEngine
2025-10-28 11:39:16 -07:00
Han Yin
51b120f464
data: pass through getModelById from ModelDao into ModelRepository
2025-10-28 11:39:16 -07:00
Han Yin
59f5caa699
Util: split FileUtils from ModelUtils; extract copy methods into FileUtils
2025-10-28 11:39:16 -07:00
Han Yin
4913ad0dae
nit: tidy SystemPromptViewModel
2025-10-28 11:39:16 -07:00
Han Yin
2614f91226
UI: replace model selection screen's data stubbing; add empty view
2025-10-28 11:39:16 -07:00
Han Yin
6b48f7473f
UI: extract a shared ModelCard component
2025-10-28 11:39:16 -07:00
Han Yin
0d41e75ca5
UI: add a confirmation step when user picks a file; refactor model import overlay into AlertDialog
2025-10-28 11:39:16 -07:00
Han Yin
1bebd1bb07
util: extract file size formatting into ModelUtils
2025-10-28 11:39:16 -07:00
Han Yin
561fe0222f
UI: handle back navigation when user is in multi-selection mode
2025-10-28 11:39:16 -07:00
Han Yin
2d6b8856f6
UI: implement multiple models deletion; update Models Management screen
2025-10-28 11:39:16 -07:00
Han Yin
025e3d2417
UI: enrich ModelManagementState; extract filename to show correct importing UI
2025-10-28 11:39:16 -07:00
Han Yin
adfbfe3ffb
data: add a util file for extracting file name & size and model metadata
2025-10-28 11:39:16 -07:00
Han Yin
290a6bfebe
bugfix: use List instead of Collection for ModelDao's deletion
2025-10-28 11:39:16 -07:00
Han Yin
5de0b5d6d0
data: import local model with file picker
2025-10-28 11:39:16 -07:00
Han Yin
a3ebdac58f
UI: polish sort order menu
2025-10-28 11:39:16 -07:00
Han Yin
760d66c97d
UI: replace Models Management screen's stubbing with instrumentation
2025-10-28 11:39:16 -07:00
Han Yin
bc93c384a7
data: introduce Model entity and DAO; update DI module
2025-10-28 11:39:16 -07:00
Han Yin
f5e2edda87
data: [WIP] prepare for ModelRepository refactor & impl
2025-10-28 11:39:16 -07:00
Han Yin
b6cc8f0c01
DI: abstract the protocol of SystemPromptRepository; update AppModule
2025-10-28 11:39:16 -07:00
Han Yin
eebc05b559
UI: polish UI for ModelsManagementScreen; inject ModelsManagementVieModel
2025-10-28 11:39:16 -07:00
Han Yin
6e82bb37d3
Feature: Introduce ModelRepository and ModelsManagementViewModel; update AppModule
2025-10-28 11:39:16 -07:00
Han Yin
aedf442632
DI: Optimize AppModule
2025-10-28 11:39:16 -07:00
Han Yin
d60bba9b8f
UI: navigation with more natural animated transitions
2025-10-28 11:39:16 -07:00
Han Yin
511df35704
bugfix: wait for model to load before navigating to benchmark screen; use NavigationActions instead of raw navController
2025-10-28 11:39:16 -07:00
Han Yin
ea11ee3c94
UI: optimize AppContent's composing
2025-10-28 11:39:16 -07:00
Han Yin
0afd087f35
DI: replace manual DI with Hilt DI
2025-10-28 11:39:16 -07:00
Han Yin
a1f6e7e476
DI: make viewmodels Hilt injectable
2025-10-28 11:39:16 -07:00
Han Yin
564b095427
DI: make app Hilt injectable
2025-10-28 11:39:16 -07:00
Han Yin
65741a7e64
DI: introduce Hilt plugin + processor + lib dependencies
2025-10-28 11:39:16 -07:00
Han Yin
af0d68d611
nit: combine temperatureMetrics and useFahrenheit
2025-10-28 11:39:16 -07:00
Han Yin
5e4972e93e
UI: refactor top app bars
2025-10-28 11:39:16 -07:00
Han Yin
2a41c0e354
vm: replace token metrics stubs with actual implementation
2025-10-28 11:39:16 -07:00
Han Yin
e47e3b77ee
UI: locks user in alert dialog when model is unloading
2025-10-28 11:39:16 -07:00
Han Yin
6b341b0fbe
bugfix: handle user quitting on model loading
2025-10-28 11:39:16 -07:00
Han Yin
e8b84c6ebf
UI: code polish
2025-10-28 11:39:16 -07:00
Han Yin
fddf060d92
data: code polish
2025-10-28 11:39:16 -07:00
Han Yin
3b499ac7e4
UI: polish conversation screen
2025-10-28 11:39:16 -07:00
Han Yin
64ebdc67a6
UI: update app name to be more Arm
2025-10-28 11:39:16 -07:00
Han Yin
55681847e9
UI: rename `ModeSelection` to `ModelLoading` for better clarity
2025-10-28 11:39:16 -07:00
Han Yin
75c986afc5
bugfix: properly handle user's quitting conversation screen while tokens in generation
2025-10-28 11:39:16 -07:00
Han Yin
4848bf93d0
data: introduce repo for System Prompt; flow data from Room to VM
2025-10-28 11:39:16 -07:00
Han Yin
5596d5203b
DB: setup Room database
2025-10-28 11:39:16 -07:00
Han Yin
4046cd16fd
Deps: bump Kotlin plugin; introduce KSP; apply in :app subproject
2025-10-28 11:39:16 -07:00
Han Yin
5868eaa66b
UI: polish system prompt setup UI
2025-10-28 11:39:16 -07:00
Han Yin
a7ee3d305f
UI: split a nested parent settings screen into separate child settings screens
2025-10-28 11:39:16 -07:00
Han Yin
65c09b2b32
UI: allow drawer's gesture control only on Home and Settings screens; enable alert dialog on back navigation inside conversation and benchmark
2025-10-28 11:39:16 -07:00
Han Yin
648b97818e
UI: disable triggering drawer via gesture; enable alert dialog on back navigation inside conversation and benchmark
2025-10-28 11:39:16 -07:00
Han Yin
a7ae8b7ce0
[WIP] DI: implement simple local vm factory provider
2025-10-28 11:39:16 -07:00
Han Yin
ca2b7772ce
UI: add a new MainActivity; update manifest
2025-10-28 11:39:16 -07:00
Han Yin
7e5c80cee9
UI: implement core flow's screens
2025-10-28 11:39:16 -07:00
Han Yin
5ad65919e9
util: implement user preferences utility
2025-10-28 11:39:16 -07:00
Han Yin
46bd638c5f
util: implement performance monitor; wrap it with a viewmodel
2025-10-28 11:39:16 -07:00
Han Yin
4dd755e25b
UI: implement basic UI components
2025-10-28 11:39:16 -07:00
Han Yin
32608fb225
UI: app navigation
2025-10-28 11:39:16 -07:00
Han Yin
3f913ce440
LLM: stub a local inference engine for faster iteration
2025-10-28 11:39:16 -07:00
Han Yin
3787fbddb0
data: define data models for LLM and system prompts
2025-10-28 11:39:16 -07:00
Han Yin
697d778db7
UI: define theme, color palette, typography and shape
2025-10-28 11:39:16 -07:00
Han Yin
cbe7133742
UI: introduce new dependencies, update versions & references
2025-10-28 11:39:16 -07:00
Han Yin
44a522dbc8
UI: move existing UI src files into `legacy` package
2025-10-28 11:39:16 -07:00
Han Yin
37f3e1c415
Feature: use local llama_context for benchmarking; support context init with custom context size
2025-10-28 11:39:16 -07:00
Han Yin
6d2279e9cd
REWRITE JNI bridge; Update viewmodel
2025-10-28 11:39:16 -07:00
Han Yin
e1bc87610e
Perf: allocate `llama_batch` on stack with `llama_batch_init`
2025-10-28 11:39:16 -07:00
Han Yin
2b52563737
Polish: better logging & documentation
2025-10-28 11:39:16 -07:00
Han Yin
ec502cfde9
Feature: implement infinite conversation via context shifting
2025-10-28 11:39:16 -07:00
Han Yin
4e515727b4
Abort on system prompt too long; Truncate user prompt if too long.
2025-10-28 11:39:16 -07:00
Han Yin
4809112ec5
Polish: adopt common naming; init modularization;
2025-10-28 11:39:16 -07:00
Han Yin
8bf2f4d412
Feature: chat template auto formatting
2025-10-28 11:39:16 -07:00
Han Yin
1b0754c0f5
Perf: optimize performance with ARM features
2025-10-28 11:39:16 -07:00
Han Yin
bb5b824208
Polish: populate backend names in `benchModel`
2025-10-28 11:39:16 -07:00
Han Yin
c14c11dcbd
Feature: decode system and user prompt in batches
2025-10-28 11:39:16 -07:00
Han Yin
02465137ca
Bug fix: null system prompt state update; Safeguard empty user prompt
2025-10-28 11:39:16 -07:00
Han Yin
7bbb53aaf8
Clang-tidy linting: make functions & global variables static
2025-10-28 11:39:16 -07:00
Han Yin
f44882aeeb
Enforce centralized dependency management; bump Gradle & deps versions
2025-10-28 11:39:16 -07:00
Han Yin
0ade7fb4d7
Polish binding: Remove verbose setup JNI APIs; Update state machine states.
2025-10-28 11:39:16 -07:00
Han Yin
7dc9968f82
Restructure `LLamaAndroid.kt`
2025-10-28 11:39:16 -07:00
Han Yin
44720859d6
Rewrite llama-android JNI implementation
2025-10-28 11:39:15 -07:00
Han Yin
d4ab3832cf
Use common sampler
2025-10-28 11:39:15 -07:00
Han Yin
1f255d4bca
Tidy & clean LLamaAndroid binding
2025-10-28 11:39:15 -07:00
Georgi Gerganov
745aa5319b
llama : deprecate llama_kv_self_ API ( #14030 )
...
* llama : deprecate llama_kv_self_ API
ggml-ci
* llama : allow llama_memory_(nullptr)
ggml-ci
* memory : add flag for optional data clear in llama_memory_clear
ggml-ci
2025-06-06 14:11:15 +03:00
Xuan-Son Nguyen
bd3f59f812
cmake : enable curl by default ( #12761 )
...
* cmake : enable curl by default
* no curl if no examples
* fix build
* fix build-linux-cross
* add windows-setup-curl
* fix
* shell
* fix path
* fix windows-latest-cmake*
* run: include_directories
* LLAMA_RUN_EXTRA_LIBS
* sycl: no llama_curl
* no test-arg-parser on windows
* clarification
* try riscv64 / arm64
* windows: include libcurl inside release binary
* add msg
* fix mac / ios / android build
* will this fix xcode?
* try clearing the cache
* add bunch of licenses
* revert clear cache
* fix xcode
* fix xcode (2)
* fix typo
2025-04-07 13:35:19 +02:00
Georgi Gerganov
e0dbec0bc6
llama : refactor llama_context, llama_kv_cache, llm_build_context ( #12181 )
...
* llama : refactor llama_context, llama_kv_cache, llm_build_context
ggml-ci
* graph : don't mutate the KV cache during defrag
ggml-ci
* context : reduce virtuals + remove test function
ggml-ci
* context : move interface implementation to source file + factory
ggml-ci
* graph : move KV cache build functions to llama_context impl
ggml-ci
* graph : remove model reference from build_pooling
ggml-ci
* graph : remove llama_model reference
ggml-ci
* kv_cache : provide rope factors
ggml-ci
* graph : rework inputs to use only unique_ptr, remove attn input abstraction
ggml-ci
* context : remove llama_context_i abstraction
ggml-ci
* context : clean-up
ggml-ci
* graph : clean-up
ggml-ci
* llama : remove redundant keywords (struct, enum)
ggml-ci
* model : adapt gemma3
ggml-ci
* graph : restore same attention ops as on master
ggml-ci
* llama : remove TODO + fix indent
ggml-ci
2025-03-13 12:35:44 +02:00
Han Yin
57b6abf85a
android : fix KV cache log message condition ( #12212 )
2025-03-06 08:22:49 +02:00
Georgi Gerganov
68ff663a04
repo : update links to new url ( #11886 )
...
* repo : update links to new url
ggml-ci
* cont : more urls
ggml-ci
2025-02-15 16:40:57 +02:00