microsoft / microsoft/semantic-kernel-java

Java: Bug: The constructor DefaultSemanticTextMemory(MemoryStore, EmbeddingGeneration<String>) refers to the missing type MemoryStore

Offen
#120 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

bug java triage
Vorherrschende Sprache
Java
Sterne
276
Forks
56
Ø Merge
17 Std. 45 Min.
Gemergte PRs (30 T.)
4

Beschreibung

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:

  1. configure pom.xml with following dependencies
  2. 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>

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit den Abhängigkeiten in pom.xml und reproduziere den Kompilierungsfehler aus dem Java-Snippet. Vergleiche die Abhängigkeit semantickernel-api 1.1.5 mit semantickernel-core 0.2.13-alpha sowie den Konstruktor von DefaultSemanticTextMemory, der auf MemoryStore verweist. Als erledigt gilt die Aufgabe, wenn das Beispiel mit einer konsistenten Abhängigkeitskonfiguration ohne den Fehler wegen des fehlenden Typs kompiliert.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
api, backend
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.