Skip to content

(EAI-993): deprecate framework #752

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 31 commits into from
Jun 5, 2025
Merged

(EAI-993): deprecate framework #752

merged 31 commits into from
Jun 5, 2025

Conversation

mongodben
Copy link
Collaborator

@mongodben mongodben commented May 27, 2025

Jira: https://jira.mongodb.org/browse/EAI-993

Changes

  • Refactor docs
    • Remove framework docs
    • Note framework deprecated
    • Update docs to be about the MongoDB Knowledge service
  • Update README
  • Remove examples of framework

Notes

@mongodben mongodben marked this pull request as ready for review June 4, 2025 15:40
Copy link
Collaborator

@nlarew nlarew left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Few nits but otherwise LGTM


You can also check out the following articles and videos about the framework:
The MongoDB Chatbot Framework in now deprecated. We will no longer be maintaining it.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe add a little blurb as to why?

  • Third party frameworks have gotten a lot better
  • Recommended alternative?: Vercel AI SDK

@@ -0,0 +1,12 @@
# MongoDB Chatbot Framework (deprecated)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you update the README, make sure to copy here too

Comment on lines 194 to 198
description: |
Custom header required for authentication with one of the pre-configured values:
- "https://mongodb.com"
- "https://www.mongodb.com"
- "https://learn.mongodb.com"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this is 100% accurate (though that's probably fine tbh)

We accept any Origin or X-Request-Origin as long as its present. The WAF has additional filters based on User-Agent.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thx will update.

should we document the User-Agent stuff here?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

update: i mention the user agent stuff, but kept it vague for now and pointed to the contact page

title: "MongoDB Chatbot Framework",
tagline: "Build RAG applications with MongoDB and Atlas Vector Search",
title: "MongoDB Knowledge Service",
tagline: "Serving MongoDB knowledge",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Over 500k served!

Comment on lines 69 to 74
const result = makeMongoDbReferences(
chunks.map((c) => ({
...c,
title: c.metadata?.pageTitle,
}))
);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Per your comment on the other PR - I don't think we need these maps?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yea def not. should be removed. git funk

@@ -59,7 +59,6 @@ describe("makeDefaultReferenceLinks()", () => {
title: "https://mongodb.com/docs/realm/sdk/node/",
url: "https://mongodb.com/docs/realm/sdk/node/",
metadata: {
sourceName: "realm",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These tests are failing in CI because the sourceName value is still present

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

think some gitfunk. will 2x check and revert

@mongodben mongodben changed the base branch from retrieval_tool_call to main June 5, 2025 14:47
@mongodben mongodben changed the base branch from main to retrieval_tool_call June 5, 2025 14:51
@mongodben mongodben merged commit 8eb82bf into retrieval_tool_call Jun 5, 2025
1 check failed
@mongodben mongodben deleted the EAI-993 branch June 5, 2025 15:09
mongodben added a commit that referenced this pull request Jun 11, 2025
* (EAI-988): Refactor `GenerateResponse` for tool call support  (#687)

* refactor GenerateRespose

* Clean up imports

* consolidate generate user prompt to the legacy file

* update test config imports

* Fix broken tests

* (EAI-989): Refactor verified answers to wrap `GenerateResponse` (#688)

verified answer generate response

Co-authored-by: Ben Perlmutter <[email protected]>

* handle streaming

* separate generateresponse

* typo fix

---------

Co-authored-by: Ben Perlmutter <[email protected]>

* (EAI-990): Refactor search as a tool  (#705)

* refactor GenerateRespose

* Clean up imports

* consolidate generate user prompt to the legacy file

* update test config imports

* Fix broken tests

* get started

* nominally working generate res w/ search

* small refactors

* aint pretty but fully functional

* hacky if more functional

* more hack

* tools

* functional if not pretty

* Add processing

* working tool calling

* making progress

* keepin on

* Clean config

* working e2e

* update model version

* Remove no longer used stuff

* decouple search results for references and whats shown to model

* fix scripts build errs

* fix broken tests

* update default ref links

* fix broken tests

* Apply suggestions from code review

Co-authored-by: Nick Larew <[email protected]>

* revert default reference links

* adding missing test

---------

Co-authored-by: Ben Perlmutter <[email protected]>
Co-authored-by: Nick Larew <[email protected]>

* (EAI-992): Remove `ChatLlm` (#751)

* refactor GenerateRespose

* Clean up imports

* consolidate generate user prompt to the legacy file

* update test config imports

* Fix broken tests

* get started

* nominally working generate res w/ search

* small refactors

* aint pretty but fully functional

* hacky if more functional

* more hack

* tools

* functional if not pretty

* Add processing

* working tool calling

* making progress

* keepin on

* Clean config

* working e2e

* update model version

* Remove no longer used stuff

* decouple search results for references and whats shown to model

* fix scripts build errs

* remove ChatLlm

* lite fixes

* Remove stub

---------

Co-authored-by: Ben Perlmutter <[email protected]>

* (EAI-993): deprecate framework (#752)

* refactor GenerateRespose

* Clean up imports

* consolidate generate user prompt to the legacy file

* update test config imports

* Fix broken tests

* get started

* nominally working generate res w/ search

* small refactors

* aint pretty but fully functional

* hacky if more functional

* more hack

* tools

* functional if not pretty

* Add processing

* working tool calling

* making progress

* keepin on

* Clean config

* working e2e

* update model version

* Remove no longer used stuff

* decouple search results for references and whats shown to model

* fix scripts build errs

* fix broken tests

* deprecation

* build out docs following last week convo

* clean up spec + contact

* fix merge funk

* docs updates

---------

Co-authored-by: Ben Perlmutter <[email protected]>

* (EAI-1071): Fix broken Atlas OpenAPI ingest (#765)

* update to fix broken test

* Update packages/ingest-mongodb-public/src/sources/snooty/snootyAstToOpenApiSpec.ts

---------

Co-authored-by: Ben Perlmutter <[email protected]>

* (EAI-995): add guardrail (#755)

* refactor GenerateRespose

* Clean up imports

* consolidate generate user prompt to the legacy file

* update test config imports

* Fix broken tests

* get started

* nominally working generate res w/ search

* small refactors

* aint pretty but fully functional

* hacky if more functional

* more hack

* tools

* functional if not pretty

* Add processing

* working tool calling

* making progress

* keepin on

* Clean config

* working e2e

* update model version

* Remove no longer used stuff

* decouple search results for references and whats shown to model

* fix scripts build errs

* fix broken tests

* update default ref links

* fix broken tests

* input guardrail refactor

* guardrail works well

* simpler validity metric

* add guardrail to server

* add next step todo

* llm refusal msg

* remove TODO comment

* merge fix

* fix unnec changes

* NL feedback

---------

Co-authored-by: Ben Perlmutter <[email protected]>

* fix type in text

* (EAI-991 & EAI-1050): Evaluate and clean up retrieval as a tool (#757)

* refactor GenerateRespose

* Clean up imports

* consolidate generate user prompt to the legacy file

* update test config imports

* Fix broken tests

* get started

* nominally working generate res w/ search

* small refactors

* aint pretty but fully functional

* hacky if more functional

* more hack

* tools

* functional if not pretty

* Add processing

* working tool calling

* making progress

* keepin on

* Clean config

* working e2e

* update model version

* Remove no longer used stuff

* decouple search results for references and whats shown to model

* fix scripts build errs

* fix broken tests

* update default ref links

* fix broken tests

* input guardrail refactor

* guardrail works well

* simpler validity metric

* add guardrail to server

* add next step todo

* llm refusal msg

* remove TODO comment

* evals on new architecture

* Get urls in a way that supports verified answers

* dont eval on retrieved elems if no context

* Cleaner handling

* update trace handling

* update trace handling

* undo git funk

* handle undefined case

* Fix tracing test

---------

Co-authored-by: Ben Perlmutter <[email protected]>

* remove console logs + redunancies

---------

Co-authored-by: Ben Perlmutter <[email protected]>
Co-authored-by: Nick Larew <[email protected]>
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.

2 participants