Skip to content

Commit d8794ee

Browse files
authored
examples: refactor diffusion generation (ggml-org#22590)
* examples: refactor diffusion generation * renamed enum values
1 parent 36a694c commit d8794ee

6 files changed

Lines changed: 496 additions & 453 deletions

File tree

common/arg.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3794,7 +3794,10 @@ common_params_context common_params_parser_init(common_params & params, llama_ex
37943794
).set_examples({ LLAMA_EXAMPLE_DIFFUSION }));
37953795
add_opt(common_arg(
37963796
{"--diffusion-algorithm"}, "N",
3797-
string_format("diffusion algorithm: 0=ORIGIN, 1=ENTROPY_BASED, 2=MARGIN_BASED, 3=RANDOM, 4=LOW_CONFIDENCE (default: %d)", params.diffusion.algorithm),
3797+
string_format(
3798+
"diffusion algorithm: 0=DIFFUSION_ALGORITHM_ORIGIN, 1=DIFFUSION_ALGORITHM_ENTROPY_BASED, "
3799+
"2=DIFFUSION_ALGORITHM_MARGIN_BASED, 3=DIFFUSION_ALGORITHM_RANDOM, "
3800+
"4=DIFFUSION_ALGORITHM_CONFIDENCE_BASED (default: %d)", params.diffusion.algorithm),
37983801
[](common_params & params, int value) { params.diffusion.algorithm = value; }
37993802
).set_examples({ LLAMA_EXAMPLE_DIFFUSION }));
38003803
add_opt(common_arg(

examples/diffusion/CMakeLists.txt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
1+
set(TARGET llama-diffusion)
2+
add_library(${TARGET} STATIC diffusion.cpp diffusion.h)
3+
target_link_libraries(${TARGET} PUBLIC llama llama-common ${CMAKE_THREAD_LIBS_INIT})
4+
target_compile_features(${TARGET} PUBLIC cxx_std_17)
5+
16
set(TARGET llama-diffusion-cli)
27
add_executable(${TARGET} diffusion-cli.cpp)
38
install(TARGETS ${TARGET} RUNTIME)
4-
target_link_libraries(${TARGET} PRIVATE llama llama-common ${CMAKE_THREAD_LIBS_INIT})
9+
target_link_libraries(${TARGET} PRIVATE llama-diffusion llama llama-common ${CMAKE_THREAD_LIBS_INIT})
510
target_compile_features(${TARGET} PRIVATE cxx_std_17)

examples/diffusion/README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@ The diffusion CLI supports various parameters to control the generation process:
1212
### Core Diffusion Parameters
1313
- `--diffusion-steps`: Number of diffusion steps (default: 256)
1414
- `--diffusion-algorithm`: Algorithm for token selection
15-
- `0`: ORIGIN - Token will be generated in a purely random order from https://arxiv.org/abs/2107.03006.
16-
- `1`: ENTROPY_BASED - Entropy-based selection
17-
- `2`: MARGIN_BASED - Margin-based selection
18-
- `3`: RANDOM - Random selection
19-
- `4`: CONFIDENCE_BASED - Confidence-based selection (default)
15+
- `0`: DIFFUSION_ALGORITHM_ORIGIN - Token will be generated in a purely random order from https://arxiv.org/abs/2107.03006.
16+
- `1`: DIFFUSION_ALGORITHM_ENTROPY_BASED - Entropy-based selection
17+
- `2`: DIFFUSION_ALGORITHM_MARGIN_BASED - Margin-based selection
18+
- `3`: DIFFUSION_ALGORITHM_RANDOM - Random selection
19+
- `4`: DIFFUSION_ALGORITHM_CONFIDENCE_BASED - Confidence-based selection (default)
2020
- More documentation here https://github.com/DreamLM/Dream
2121
- `--diffusion-visual`: Enable live visualization during generation
2222

0 commit comments

Comments
 (0)