-
Notifications
You must be signed in to change notification settings - Fork 0
📖 [ION-283] document langchain tool #5
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
Conversation
Idea here being we control which SDK version is being used but allow developers to have higher patch versions of langchain. https://python-poetry.org/docs/dependency-specification/#tilde-requirements
| # Ionic Langchain | ||
|
|
||
| Pre-release. Do not use this. | ||
| Ionic Langchain provides a wrapper around the Ionic Commerce's SDK for use as a `Tool` in a custom Langchain agent. This tool will enable e-commerce for your agent, allowing your users to ask for product recommendations and purchase products through the agent chat interface. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jdmccarty I opted to write my own copy here but please suggest improvements. As a developer the website copy doesn't tell me a lot in plain english about what the tool is doing.
| ## Usage | ||
|
|
||
| Pre-release. Do not use this. | ||
| ```python |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
more or less adapting what we have written in our demobot; happy to make modifications.
| ## Installation | ||
|
|
||
| Pre-release. Do not use this. | ||
| This tool requires at least `langchain@0.0.350` and can work with any greater patch release the `0.0.x` series. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've never written a public package; not sure about python version compatibility or how we should be managing that. I figure we don't need that right away but IMO worth figuring out.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should only support the latest LTS for the start.
When someone pays us money and needs a specific version that's another story imo.
| readme = "README.md" | ||
| packages = [{include = "ionic_langchain"}] | ||
|
|
||
| [tool.poetry.dependencies] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we want to add more metadata here in the effort towards publishing on PyPI?
https://packaging.python.org/en/latest/tutorials/packaging-projects/#configuring-metadata
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Eventually 💯
* 📦 upgrade SDK to 0.5.3 (#3) * tests * 📦 update ionic-sdk-python * 🏷️ bump version * inject ionic into tool (#4) * let ionic be injected into tool * 🏷️ bump version * 📖 [ION-283] document langchain tool (#5) * 📦 fleixble langchain dependency; pinned sdk Idea here being we control which SDK version is being used but allow developers to have higher patch versions of langchain. https://python-poetry.org/docs/dependency-specification/#tilde-requirements * 📖 first pass at documentation * Update README.md * 👷♂️📦🏷️ [ION-285] workflow for publishing new releases (#7) * 👷♂️📦 workflow for publishing new releases Right now this requires manually bumping poetry and creating a git release but I added a couple of guardrails so that we ensure we only publish when the poetry package version matches the github release reference. Future iteration will move the version bumping and release cutting to the workflow. * 🏷️ bump verison to 0.1.3 want something to test with when this merges * set workflow up for iterative testing * dry run for publishing * warn instead of fail if tag checks fail * 👷♂️ [ION-285] release publication workflow fixups (#8) * 📌 pin python version * 🐛 use ref_name instead of ref ref is a lot longer, e.g. 'refs/heads/gmkohler/ION-285' found with debug logging * 🏷️ bump patch version want to compare with new release * 👷♂️ [ION-285] Revert "set workflow up for iterative testing" (#10) * Revert "set workflow up for iterative testing" This reverts commit 49cc39f. * 🏷️ bump version to 0.1.5 want to test the release guardrails * 👷♂️ [ION-285] adjust github expressions (#11) * tidy expressions up think it all needs to be interpolated * 🏷️ poetry version patch need to verify new changes * 👷♂️ [ION-285] automate version bumping / tagging in release workflow (#9) * 👷♂️ bump version within workflow * ☑️ use type: choice for release input This should enforce a dropdown * fix release-action name * tidy release step * 🏷️ prepare version v0.1.7 for release * 🏷️ prepare version v0.1.8 for release * 📖 add sentence re: python version support (#12) * 📖 install library from PyPI instead of GitHub (#13) * Reduce min python version (#14) * version * readme * whoops * working example (#15) --------- Co-authored-by: Gregory M Kohler <gregory@ionicapi.com> Co-authored-by: gmkohler <gmkohler@users.noreply.github.com> Co-authored-by: Owen Sims <owen@ionicapi.com>
Not sure what should live in here versus mintlify.
Any and all suggestions are welcome for improving the docs.
I broke out "publish" into a separate ticket ION-285. If we make the repo private after publishing to PyPI then I'd imagine we should move all of this to Mintlify and change these docs to focus on developing it.