1b0e6c9c0e
* fix llava models not working after first request * individual requests only for llava models
24 lines
1.1 KiB
Diff
24 lines
1.1 KiB
Diff
diff --git a/examples/llava/clip.cpp b/examples/llava/clip.cpp
|
|
index e3c9bcd4..b43f892d 100644
|
|
--- a/examples/llava/clip.cpp
|
|
+++ b/examples/llava/clip.cpp
|
|
@@ -573,14 +573,16 @@ static ggml_cgraph * clip_image_build_graph(clip_ctx * ctx, const clip_image_f32
|
|
struct ggml_tensor * embeddings = inp;
|
|
if (ctx->has_class_embedding) {
|
|
embeddings = ggml_new_tensor_3d(ctx0, GGML_TYPE_F32, hidden_size, num_positions, batch_size);
|
|
+ }
|
|
+ ggml_set_name(embeddings, "embeddings");
|
|
+ ggml_set_input(embeddings);
|
|
+
|
|
+ if (ctx->has_class_embedding) {
|
|
embeddings = ggml_acc(ctx0, embeddings, model.class_embedding,
|
|
embeddings->nb[1], embeddings->nb[2], embeddings->nb[3], 0);
|
|
embeddings = ggml_acc(ctx0, embeddings, inp,
|
|
embeddings->nb[1], embeddings->nb[2], embeddings->nb[3], model.class_embedding->nb[1]);
|
|
}
|
|
- ggml_set_name(embeddings, "embeddings");
|
|
- ggml_set_input(embeddings);
|
|
-
|
|
|
|
struct ggml_tensor * positions = ggml_new_tensor_1d(ctx0, GGML_TYPE_I32, num_positions);
|
|
ggml_set_name(positions, "positions");
|