Skip to content

genMetadata augment PoC (local llama.cpp)#1215

Draft
eschultink wants to merge 53 commits into
rc-v0.6.8from
s225-gen-metadata-poc
Draft

genMetadata augment PoC (local llama.cpp)#1215
eschultink wants to merge 53 commits into
rc-v0.6.8from
s225-gen-metadata-poc

Conversation

@eschultink

@eschultink eschultink commented May 22, 2026

Copy link
Copy Markdown
Member

PoC for LLM-generated metadata alongside sanitized fields: genMetadata augment with local GGUF via llama.cpp, building on augments framework and sentenceMetadata (OpenNLP). Latest commit adds genMetadata processing, warning headers, Dagger wiring, and Terraform enable_gen_metadata.

Features

  • genMetadata augment — structured JSON sibling +{field}:genMetadata from deployment-configured backend (BETA: local / llama.cpp)
  • Terraform enable_gen_metadata on AWS/GCP host modules — ENABLE_GEN_METADATA, 4096 MB memory floor, remote resources for GGUF weights
  • MS Copilot PoC rules (MS_COPILOT_GEN_METADATA_AUGMENT) and commented YAML example (11 categories, no confidence)
  • Non-fatal failures via X-Psoxy-Warning (augment-gen-unavailable, augment-gen-inference-failed, augment-output-schema-mismatch)

Logistics

  • Branch stacks augments PoC + sentenceMetadata + genMetadata; review as draft

Change implications

  • dependencies added/changed? yesde.kherud:llama (java-llama.cpp JNI) in psoxy-core only; see gen-metadata-augment.md
  • something important to note in future release notes?
    • New optional Terraform variable enable_gen_metadata (host + per-connector); floors memory and enables remote resource paths when set
    • New env vars: PSOXY_GEN_*, ENABLE_GEN_METADATA
    • BETA: requires GGUF at {SHARED_RESOURCE_PATH}/llm/{model}.gguf when using local backend
    • breaking changes? no (opt-in flag and augment; existing deployments unchanged)

Test plan

  • mvn test -pl gateway-core,core -am (local)
  • terraform validate in infra/examples-dev/aws and infra/examples-dev/gcp
  • Deploy with enable_gen_metadata = true, upload GGUF, exercise MS Copilot connector with genMetadata rules enabled
  • Confirm X-Psoxy-Warning when model missing (no 5xx)

Made with Cursor

eschultink and others added 22 commits May 2, 2026 08:49
…ents/Augment.java

Co-authored-by: aperez-worklytics <75276364+aperez-worklytics@users.noreply.github.com>
Add constructor injection so Dagger can provide AugmentProcessor, and suppress SLF4J/JUL warnings during gateway-core tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
Ignore computed functionName during Jackson round-trips and align sanitized fixtures with augment sibling output.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Wire lazy model resolution through instance and shared remote resource paths at runtime, address review feedback on model loading and docs, and add provider tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
Move ResourceService to gateway-core, drop redundant NLP wiring helpers, and return SentenceMetadataResult instead of ad-hoc maps.

Co-authored-by: Cursor <cursoragent@cursor.com>
…Maven lifecycle.

Move OpenNLP download to generate-resources so models are on the test classpath, and replace skipped assumptions with explicit assertions.

Co-authored-by: Cursor <cursoragent@cursor.com>
Introduces genMetadata augment processing, Dagger-wired config/backend, non-fatal warning headers, Terraform enable_gen_metadata (4096MB floor + remote resources), and MS Copilot PoC rules/docs.

Co-authored-by: Cursor <cursoragent@cursor.com>
@eschultink eschultink changed the base branch from main to s225-nlp-poc May 22, 2026 03:34
@eschultink eschultink changed the title BETA: genMetadata augment PoC (local llama.cpp) genMetadata augment PoC (local llama.cpp) May 22, 2026
@eschultink eschultink self-assigned this May 22, 2026
@eschultink eschultink requested review from Copilot and jlorper May 22, 2026 03:35
@NoArgsConstructor
@AllArgsConstructor
@Getter
@EqualsAndHashCode(callSuper = true)
eschultink and others added 2 commits May 27, 2026 14:28
Extract ResourceServiceBindingsModule and wire NoOp remote buckets in CmdLineModule so bulk CLI compiles without FunctionRuntimeModule.

Co-authored-by: Cursor <cursoragent@cursor.com>
Use HttpEventRequestDto in WebhookSanitizerAugmentsTest, validate zip entry paths on extract, and add explicit canEqual override on GenMetadata.

Co-authored-by: Cursor <cursoragent@cursor.com>
Base automatically changed from rc-v0.6.2 to main May 29, 2026 21:22
@eschultink eschultink changed the base branch from main to rc-v0.6.3 May 29, 2026 22:04
eschultink and others added 7 commits May 29, 2026 15:47
* hotfix nondeterministic apply

* lambda timeout cannot exceed queue timeout
Jlama treats maxTokens as total KV ceiling, not max output; stop passing PSOXY_GEN_MAX_TOKENS to JlamaChatModel and truncate prompts via Dagger-wired GenMetadataPromptBudget instead.

Co-authored-by: Cursor <cursoragent@cursor.com>
Base automatically changed from rc-v0.6.3 to main June 8, 2026 17:34
An error occurred while trying to automatically change base from rc-v0.6.3 to main June 8, 2026 17:34
@eschultink eschultink changed the base branch from main to rc-v0.6.4 June 8, 2026 20:24
Base automatically changed from rc-v0.6.4 to main June 11, 2026 17:37
@eschultink eschultink changed the base branch from main to rc-v0.6.5 June 11, 2026 20:53
Base automatically changed from rc-v0.6.5 to main June 17, 2026 16:19
@eschultink eschultink changed the base branch from main to rc-v0.6.6 June 17, 2026 16:30
eschultink and others added 4 commits June 17, 2026 14:12
Resolve conflicts keeping gen-metadata augments alongside rc-v0.6.6
features (output schema filtering, FOLLOW_REDIRECTS, IAM consolidation).

Co-authored-by: Cursor <cursoragent@cursor.com>
…hema failure.

Add PSOXY_GEN_META_RETRIES (default 2 attempts) so intermittent schema-echo outputs can recover without failing the augment immediately.
Base automatically changed from rc-v0.6.6 to main June 18, 2026 20:25
@eschultink eschultink changed the base branch from main to rc-v0.6.7 June 18, 2026 20:34
Base automatically changed from rc-v0.6.7 to main July 1, 2026 18:07
@eschultink eschultink changed the base branch from main to rc-v0.6.8 July 1, 2026 18:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants