apache / apache/geaflow

[geaflow/ai-memory] Define `RetrievalMode` contract

Open
#859 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
808
Forks
188
Avg merge
3d 22h
Merged PRs (30d)
2

Description

Priority: P0
Difficulty: Starter

Context: `GraphMemoryServer` currently iterates over configured index stores. There is no explicit Basic, Vector, Graph, or Hybrid mode contract.

Scope:

- Add enum or contract for `BASIC`, `VECTOR`, `GRAPH`, `HYBRID`.
- Define required inputs, allowed indexes, and expected outputs for each mode.
- Add tests that each mode can be selected explicitly.

Constraints:

- Do not implement router ranking in this issue.
- Do not change answer synthesis.

Acceptance Criteria:

- Calling unsupported mode fails with typed error.
- Mode selection is visible in retrieval trace.

Suggested paths:

- `geaflow-ai/src/main/java/org/apache/geaflow/ai/retrieval`

Contributor guide

Open the contributing guide

Research direction

Start in geaflow-ai/src/main/java/org/apache/geaflow/ai/retrieval and trace how GraphMemoryServer currently iterates over configured index stores. Define the RetrievalMode contract for BASIC, VECTOR, GRAPH, and HYBRID, then add tests showing each mode can be selected explicitly. Done means unsupported modes produce a typed error and the selected mode appears in the retrieval trace, without changing ranking or answer synthesis.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
ai, backend-api-design
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.