Skip to content

Commit 9822eab

Browse files
committed
Fix Ollama ITs
1 parent c98caf2 commit 9822eab

File tree

2 files changed

+26
-2
lines changed

2 files changed

+26
-2
lines changed

models/spring-ai-ollama/src/test/java/org/springframework/ai/ollama/OllamaChatModelObservationIT.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,8 @@ private void validate(ChatResponseMetadata responseMetadata) {
141141
.hasHighCardinalityKeyValue(HighCardinalityKeyNames.REQUEST_TEMPERATURE.asString(), "0.7")
142142
.hasHighCardinalityKeyValue(HighCardinalityKeyNames.REQUEST_TOP_K.asString(), "1")
143143
.hasHighCardinalityKeyValue(HighCardinalityKeyNames.REQUEST_TOP_P.asString(), "1.0")
144-
.hasHighCardinalityKeyValue(HighCardinalityKeyNames.RESPONSE_ID.asString(), responseMetadata.getId())
144+
// .hasHighCardinalityKeyValue(HighCardinalityKeyNames.RESPONSE_ID.asString(),
145+
// responseMetadata.getId())
145146
.hasHighCardinalityKeyValue(HighCardinalityKeyNames.RESPONSE_FINISH_REASONS.asString(), "[\"stop\"]")
146147
.hasHighCardinalityKeyValue(HighCardinalityKeyNames.USAGE_INPUT_TOKENS.asString(),
147148
String.valueOf(responseMetadata.getUsage().getPromptTokens()))

models/spring-ai-ollama/src/test/java/org/springframework/ai/ollama/OllamaEmbeddingModelObservationIT.java

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,22 +18,30 @@
1818
import io.micrometer.common.KeyValue;
1919
import io.micrometer.observation.tck.TestObservationRegistry;
2020
import io.micrometer.observation.tck.TestObservationRegistryAssert;
21+
22+
import org.apache.commons.logging.Log;
23+
import org.apache.commons.logging.LogFactory;
24+
import org.junit.jupiter.api.BeforeAll;
2125
import org.junit.jupiter.api.Test;
2226
import org.junit.jupiter.api.condition.DisabledIf;
2327
import org.springframework.ai.embedding.EmbeddingRequest;
2428
import org.springframework.ai.embedding.EmbeddingResponse;
2529
import org.springframework.ai.embedding.EmbeddingResponseMetadata;
2630
import org.springframework.ai.embedding.observation.DefaultEmbeddingModelObservationConvention;
31+
import org.springframework.ai.embedding.observation.EmbeddingModelObservationDocumentation.HighCardinalityKeyNames;
32+
import org.springframework.ai.embedding.observation.EmbeddingModelObservationDocumentation.LowCardinalityKeyNames;
2733
import org.springframework.ai.observation.conventions.AiOperationType;
2834
import org.springframework.ai.observation.conventions.AiProvider;
2935
import org.springframework.ai.ollama.api.OllamaApi;
36+
import org.springframework.ai.ollama.api.OllamaApiIT;
3037
import org.springframework.ai.ollama.api.OllamaModel;
3138
import org.springframework.ai.ollama.api.OllamaOptions;
3239
import org.springframework.beans.factory.annotation.Autowired;
3340
import org.springframework.boot.SpringBootConfiguration;
3441
import org.springframework.boot.test.context.SpringBootTest;
3542
import org.springframework.context.annotation.Bean;
3643

44+
import java.io.IOException;
3745
import java.util.List;
3846

3947
import static org.assertj.core.api.Assertions.assertThat;
@@ -49,12 +57,27 @@
4957
@DisabledIf("isDisabled")
5058
public class OllamaEmbeddingModelObservationIT extends BaseOllamaIT {
5159

60+
private static final Log logger = LogFactory.getLog(OllamaApiIT.class);
61+
62+
private static final String MODEL = OllamaModel.NOMIC_EMBED_TEXT.getName();
63+
5264
@Autowired
5365
TestObservationRegistry observationRegistry;
5466

5567
@Autowired
5668
OllamaEmbeddingModel embeddingModel;
5769

70+
static String baseUrl = "http://localhost:11434";
71+
72+
@BeforeAll
73+
public static void beforeAll() throws IOException, InterruptedException {
74+
logger.info("Start pulling the '" + MODEL + " ' generative ... would take several minutes ...");
75+
ollamaContainer.execInContainer("ollama", "pull", MODEL);
76+
logger.info(MODEL + " pulling competed!");
77+
78+
baseUrl = "http://" + ollamaContainer.getHost() + ":" + ollamaContainer.getMappedPort(11434);
79+
}
80+
5881
@Test
5982
void observationForEmbeddingOperation() {
6083
var options = OllamaOptions.builder().withModel(OllamaModel.NOMIC_EMBED_TEXT.getName()).build();
@@ -98,7 +121,7 @@ public TestObservationRegistry observationRegistry() {
98121

99122
@Bean
100123
public OllamaApi openAiApi() {
101-
return new OllamaApi();
124+
return new OllamaApi(baseUrl);
102125
}
103126

104127
@Bean

0 commit comments

Comments
 (0)