microsoft / microsoft/semantic-kernel-java
Java: Bug: The constructor DefaultSemanticTextMemory(MemoryStore, EmbeddingGeneration<String>) refers to the missing type MemoryStore
Personne n'a encore pris cette issue.
- Langage dominant
- Java
- Étoiles
- 276
- Forks
- 56
- Merge moyen
- 17 h 45 min
- PR mergées (30 j)
- 4
Description
Describe the bug
I have tried to use AzureAISearch for vector DB, but there is no MemoryStore class across jar files. I believe semantickernel-core-0.2.6-alpha.jar should contain MemoryStore class, but there is no such file.
To Reproduce
Steps to reproduce the behavior:
- configure pom.xml with following dependencies
- create following Java code
Expected behavior
Solve missing type MemoryStore error.
Platform
- OS: Windows
- IDE: VS Code
- Language: Java
- Source: maven and following Java code
OpenAIAsyncClient client = new OpenAIClientBuilder()
.endpoint(endpoint)
.credential(new AzureKeyCredential(secretKey))
.buildAsyncClient();
OpenAITextEmbeddingGeneration embedding = new OpenAITextEmbeddingGeneration(client, "text-embedding-ada-002");
DefaultSemanticTextMemory memory = new DefaultSemanticTextMemory(aisearchMemory, embedding);
Additional context
Here is pom.xml dependencies.
<dependencies>
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel-api</artifactId>
<version>1.1.5</version>
</dependency>
<!--
https://mvnrepository.com/artifact/com.microsoft.semantic-kernel/semantickernel-aiservices-openai -->
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel-aiservices-openai</artifactId>
<version>1.1.5</version>
</dependency>
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel-core</artifactId>
<version>0.2.13-alpha</version>
<scope>runtime</scope>
<!-- TODO: scope should be runtime, but VolatileMemoryStore is an issue -->
<!-- <scope>runtime</scope> -->
</dependency>
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel-plugin-core</artifactId>
<version>0.2.13-alpha</version>
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-openai</artifactId>
<version>1.0.0-beta.8</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.20.0</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.20.0</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j2-impl</artifactId>
<version>2.20.0</version>
</dependency>
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel-planners</artifactId>
<version>0.2.13-alpha</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.microsoft.semantic-kernel</groupId>
<artifactId>semantickernel-gpt3-tokenizer</artifactId>
<version>0.2.13-alpha</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.17.2</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.17.2</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.microsoft.semantic-kernel.connectors</groupId>
<artifactId>semantickernel-connectors</artifactId>
<version>0.2.7-alpha</version>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>5.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par les dépendances de pom.xml et reproduisez l’erreur de compilation de l’extrait Java. Comparez la dépendance semantickernel-api 1.1.5 avec semantickernel-core 0.2.13-alpha ainsi que le constructeur de DefaultSemanticTextMemory qui fait référence à MemoryStore. Le travail est considéré comme terminé lorsque l’exemple se compile sans l’erreur de type manquant avec une configuration cohérente des dépendances.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- java
- Domaine
- api, backend
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 25/100