microsoft / microsoft/semantic-kernel-java

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

未关闭
#120 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

bug java triage
主要语言
Java
星标
276
派生
56
平均合并
17 小时 45 分钟
30 天内合并 PR
4

描述

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>

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

从 pom.xml 中的依赖项开始,并重现 Java 代码片段中的编译错误。比较 semantickernel-api 1.1.5 依赖项与 semantickernel-core 0.2.13-alpha,以及引用 MemoryStore 的 DefaultSemanticTextMemory 构造函数。使用一致的依赖项配置使示例在没有缺少类型错误的情况下编译通过,即视为完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
java
领域
api, backend
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
需要澄清
新手友好度
25/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。