Commit Graph

323 Commits (master)

Author SHA1 Message Date
Erick Friis 6afb135baa
astradb: move to langchain-datastax repo (#18354) 3 months ago
Bagatur 5efb5c099f
text-splitters[minor], langchain[minor], community[patch], templates, docs: langchain-text-splitters 0.0.1 (#18346) 3 months ago
Erick Friis c7d5ed6f5c
infra: tolerate partner package move in ci (#18355) 3 months ago
Erick Friis 4e27e66938
infra: mongodb env vars (#18347) 3 months ago
Erick Friis dfd9787388
infra: ci dirs in wrong order (#18340) 3 months ago
Erick Friis 68be5a7658
infra: skip ibm api docs (#18335) 3 months ago
Erick Friis 43534a4c08
skip airbyte api docs (#18334) 3 months ago
Brace Sproul ca4f5e2408
ci: Update issue template required checks (#18283) 3 months ago
Erick Friis 2e31f1c2f8
infra: api docs folder move (#18223) 3 months ago
Erick Friis be8d2ff5f7
airbyte[patch]: init pkg (#18236) 3 months ago
Harrison Chase c673717c2b
add optimization notebook (#18155) 3 months ago
Max Jakob 5ab69f907f
partners: add Elasticsearch package (#17467)
### Description
This PR moves the Elasticsearch classes to a partners package.

Note that we will not move (and later remove) `ElasticKnnSearch`. It
were previously deprecated.
`ElasticVectorSearch` is going to stay in the community package since it
is used quite a lot still.

Also note that I left the `ElasticsearchTranslator` for self query
untouched because it resides in main `langchain` package.

### Dependencies
There will be another PR that updates the notebooks (potentially pulling
them into the partners package) and templates and removes the classes
from the community package, see
https://github.com/langchain-ai/langchain/pull/17468

#### Open question
How to make the transition smooth for users? Do we move the import
aliases and require people to install `langchain-elasticsearch`? Or do
we remove the import aliases from the `langchain` package all together?
What has worked well for other partner packages?

---------

Co-authored-by: Erick Friis <erick@langchain.dev>
3 months ago
Erick Friis 257879e98d
infra: api docs setup action location (#18148) 3 months ago
Erick Friis 28cf3aab45
infra: api docs build commit dir (#18147) 3 months ago
Erick Friis e3b7779926
docs: api docs for external repos (#17904)
Stacked on google removal PR. Will make google continue to show up in
API docs even from external repo
3 months ago
Erick Friis e566a3077e
infra: simplify and fix CI for docs-only changes (#18058)
Current success check will fail on docs-only changes
3 months ago
Erick Friis 9ebbca3695
infra: CI success for partner packages 2 (#18043) 3 months ago
Erick Friis b948f6da67
infra: CI success for partner packages (#18037)
Thank you for contributing to LangChain!

- [ ] **PR title**: "package: description"
- Where "package" is whichever of langchain, community, core,
experimental, etc. is being modified. Use "docs: ..." for purely docs
changes, "templates: ..." for template changes, "infra: ..." for CI
changes.
  - Example: "community: add foobar LLM"


- [ ] **PR message**: ***Delete this entire checklist*** and replace
with
    - **Description:** a description of the change
    - **Issue:** the issue # it fixes, if applicable
    - **Dependencies:** any dependencies required for this change
- **Twitter handle:** if your PR gets announced, and you'd like a
mention, we'll gladly shout you out!


- [ ] **Add tests and docs**: If you're adding a new integration, please
include
1. a test for the integration, preferably unit tests that do not rely on
network access,
2. an example notebook showing its use. It lives in
`docs/docs/integrations` directory.


- [ ] **Lint and test**: Run `make format`, `make lint` and `make test`
from the root of the package(s) you've modified. See contribution
guidelines for more: https://python.langchain.com/docs/contributing/

Additional guidelines:
- Make sure optional dependencies are imported within a function.
- Please do not add dependencies to pyproject.toml files (even optional
ones) unless they are required for unit tests.
- Most PRs should not touch more than one package.
- Changes should be backwards compatible.
- If you are adding something to community, do not re-import it in
langchain.

If no one reviews your PR within a few days, please @-mention one of
baskaryan, efriis, eyurtsev, hwchase17.
3 months ago
Erick Friis a2886c4509
infra: skip codespell ambr (#17992) 3 months ago
Erick Friis 8dda7c32ba
infra: ci failure job (#17989) 3 months ago
Erick Friis afc1def49b
infra: ci end check, consolidation (#17987)
Consolidates CI checks into check_diffs.yml in order to properly
consolidate them into a single success status
3 months ago
Erick Friis cd806400fc
infra: ci end check (#17986) 3 months ago
Graden Rea e5e38e89ce
partner: Add groq partner integration and chat model (#17856)
Description: Add a Groq chat model
issue: TODO
Dependencies: groq
Twitter handle: N/A
3 months ago
Jacob Lee 375051a64e
👥 Update LangChain people data (#17900)
👥 Update LangChain people data

---------

Co-authored-by: github-actions <github-actions@github.com>
3 months ago
Jacob Lee 5395c254d5
👥 Update LangChain people data (#17743)
👥 Update LangChain people data

---------

Co-authored-by: github-actions <github-actions@github.com>
3 months ago
Bagatur a9d3c100a2
infra: PR template nits (#17752) 3 months ago
Stefano Lottini 5240ecab99
astradb: bootstrapping Astra DB as Partner Package (#16875)
**Description:** This PR introduces a new "Astra DB" Partner Package.

So far only the vector store class is _duplicated_ there, all others
following once this is validated and established.

Along with the move to separate package, incidentally, the class name
will change `AstraDB` => `AstraDBVectorStore`.

The strategy has been to duplicate the module (with prospected removal
from community at LangChain 0.2). Until then, the code will be kept in
sync with minimal, known differences (there is a makefile target to
automate drift control. Out of convenience with this check, the
community package has a class `AstraDBVectorStore` aliased to `AstraDB`
at the end of the module).

With this PR several bugfixes and improvement come to the vector store,
as well as a reshuffling of the doc pages/notebooks (Astra and
Cassandra) to align with the move to a separate package.

**Dependencies:** A brand new pyproject.toml in the new package, no
changes otherwise.

**Twitter handle:** `@rsprrs`

---------

Co-authored-by: Christophe Bornet <cbornet@hotmail.com>
Co-authored-by: Erick Friis <erick@langchain.dev>
3 months ago
Erick Friis 6cc6faa00e
ai21: init package (#17592)
Co-authored-by: Asaf Gardin <asafg@ai21.com>
Co-authored-by: etang <etang@ai21.com>
Co-authored-by: asafgardin <147075902+asafgardin@users.noreply.github.com>
3 months ago
Eugene Yurtsev e438fe6be9
Docs: Contributing changes (#17551)
A few minor changes for contribution:

1) Updating link to say "Contributing" rather than "Developer's guide"
2) Minor changes after going through the contributing documentation
page.
3 months ago
Mateusz Szewczyk 916332ef5b
ibm: added partners package `langchain_ibm`, added llm (#16512)
- **Description:** Added `langchain_ibm` as an langchain partners
package of IBM [watsonx.ai](https://www.ibm.com/products/watsonx-ai) LLM
provider (`WatsonxLLM`)
- **Dependencies:**
[ibm-watsonx-ai](https://pypi.org/project/ibm-watsonx-ai/),
  - **Tag maintainer:** : 
---------

Co-authored-by: Erick Friis <erick@langchain.dev>
3 months ago
wulixuan c776cfc599
community[minor]: integrate with model Yuan2.0 (#15411)
1. integrate with
[`Yuan2.0`](https://github.com/IEIT-Yuan/Yuan-2.0/blob/main/README-EN.md)
2. update `langchain.llms`
3. add a new doc for [Yuan2.0
integration](docs/docs/integrations/llms/yuan2.ipynb)

---------

Co-authored-by: Harrison Chase <hw.chase.17@gmail.com>
Co-authored-by: Bagatur <baskaryan@gmail.com>
3 months ago
Bagatur 9e8a3fc4ff
infra: rm @ from pr template (#17507) 3 months ago
Bagatur 1aeb52caac
infra: merge in master during api docs build (#17494) 4 months ago
Bagatur 54373fb384
infra: add api docs build GHA (#17493) 4 months ago
Erick Friis 112e10e933
infra: azure release integration testing secrets (#17476) 4 months ago
Bagatur bd0ad6637a
infra: pr template nit (#17438) 4 months ago
Bagatur 37629516cd
infra: update pr template (#17437) 4 months ago
Erick Friis 3a2eb6e12b
infra: add print rule to ruff (#16221)
Added noqa for existing prints. Can slowly remove / will prevent more
being intro'd
4 months ago
Eugene Yurtsev 344a227b5b
CI: Update documentation template (#17325)
Update the documentation template
4 months ago
Bagatur 35c1bf339d
infra: rm boto3, gcaip from pyproject (#17270) 4 months ago
Erick Friis f87acf0340
infra: better conditional (#17197) 4 months ago
Erick Friis 4ae91733aa
infra: fix core release (#17195)
core doesn't have any min deps to test
4 months ago
Erick Friis f499a222de
infra: release min version debugging 2 (#17152) 4 months ago
Erick Friis deb02de051
infra: release min version debugging (#17150) 4 months ago
Erick Friis 9710346095
infra: poetry run min versions 2 (#17149) 4 months ago
Erick Friis 181a033226
infra: poetry run min versions (#17146)
<!-- Thank you for contributing to LangChain!

Please title your PR "<package>: <description>", where <package> is
whichever of langchain, community, core, experimental, etc. is being
modified.

Replace this entire comment with:
  - **Description:** a description of the change, 
  - **Issue:** the issue # it fixes if applicable,
  - **Dependencies:** any dependencies required for this change,
- **Twitter handle:** we announce bigger features on Twitter. If your PR
gets announced, and you'd like a mention, we'll gladly shout you out!

Please make sure your PR is passing linting and testing before
submitting. Run `make format`, `make lint` and `make test` from the root
of the package you've modified to check this locally.

See contribution guidelines for more information on how to write/run
tests, lint, etc: https://python.langchain.com/docs/contributing/

If you're adding a new integration, please include:
1. a test for the integration, preferably unit tests that do not rely on
network access,
2. an example notebook showing its use. It lives in
`docs/docs/integrations` directory.

If no one reviews your PR within a few days, please @-mention one of
@baskaryan, @eyurtsev, @hwchase17.
 -->
4 months ago
Erick Friis 2187268208
infra: fix release (#17142) 4 months ago
Erick Friis 22b6a03a28
infra: read min versions (#17135) 4 months ago
Erick Friis 37062549f9
infra: update to cache v4 (#17126)
stop using nodejs 16. Use 20 (stop deprecation annotation on all ci)

Changelog: https://github.com/actions/cache?tab=readme-ov-file#whats-new
4 months ago
Erick Friis 3ccffa5dcc
infra: add integration deps to partner lint (#17122) 4 months ago
Erick Friis 6af912d7e0
infra: add pinecone secret (#17120) 4 months ago
Harrison Chase 4eda647fdd
infra: add -p to mkdir in lint steps (#17013)
Previously, if this did not find a mypy cache then it wouldnt run

this makes it always run

adding mypy ignore comments with existing uncaught issues to unblock other prs

---------

Co-authored-by: Erick Friis <erick@langchain.dev>
Co-authored-by: Bagatur <22008038+baskaryan@users.noreply.github.com>
4 months ago
Erick Friis 2b7e47a668
infra: install integration deps for test linting (#16963)
<!-- Thank you for contributing to LangChain!

Please title your PR "<package>: <description>", where <package> is
whichever of langchain, community, core, experimental, etc. is being
modified.

Replace this entire comment with:
  - **Description:** a description of the change, 
  - **Issue:** the issue # it fixes if applicable,
  - **Dependencies:** any dependencies required for this change,
- **Twitter handle:** we announce bigger features on Twitter. If your PR
gets announced, and you'd like a mention, we'll gladly shout you out!

Please make sure your PR is passing linting and testing before
submitting. Run `make format`, `make lint` and `make test` from the root
of the package you've modified to check this locally.

See contribution guidelines for more information on how to write/run
tests, lint, etc: https://python.langchain.com/docs/contributing/

If you're adding a new integration, please include:
1. a test for the integration, preferably unit tests that do not rely on
network access,
2. an example notebook showing its use. It lives in
`docs/docs/integrations` directory.

If no one reviews your PR within a few days, please @-mention one of
@baskaryan, @eyurtsev, @hwchase17.
 -->
4 months ago
Erick Friis 13a6756067
infra: ci naming 2 (#16893) 4 months ago
Erick Friis 5b3fc86cfd
infra: ci naming (#16890)
Make it clearer how to run equivalent commands locally

Not a perfect 1:1, but will help people get started

![Screenshot 2024-02-01 at 10 53
34 AM](https://github.com/langchain-ai/langchain/assets/9557659/da271aaf-d5db-41e3-9379-cb1d8a0232c5)
4 months ago
Erick Friis 17e886388b
nomic: init pkg (#16853)
Co-authored-by: Lance Martin <lance@langchain.dev>
4 months ago
Erick Friis 36c0392dbe
infra: remove unnecessary tests on partner packages (#16808) 4 months ago
Erick Friis 0255c5808b
infra: move release workflow back (#16707) 4 months ago
Daniel Erenrich c314137f5b
docs: Fix broken link in CONTRIBUTING.md (#16681)
- **Description:** link in CONTRIBUTING.md is broken
  - **Issue:** N/A
  - **Dependencies:** N/A
  - **Twitter handle:** @derenrich
4 months ago
Bagatur 5975bf39ec
infra: delete old CI workflows (#16680) 4 months ago
Erick Friis adc008407e
exa: init pkg (#16553) 4 months ago
Eugene Yurtsev fe382fcf20
CI: more qa template changes (#16533)
More qa template changes
4 months ago
Eugene Yurtsev 06f66f25e1
CI: Update q-a template (#16532)
Update template for QA discussions
4 months ago
Eugene Yurtsev b1b351b37e
CI: more updates to feature request template (#16531)
More updates
4 months ago
Eugene Yurtsev 4fad71882e
CI: Fix ideas template (#16529)
Fix ideas template
4 months ago
Eugene Yurtsev 8d990ba67b
CI: more update to ideas template (#16524)
Update ideas template
4 months ago
Eugene Yurtsev 63da14d620
CI: redirect feature requests to ideas in discussions (#16522)
Redirect feature requests to ideas in discussions
4 months ago
Eugene Yurtsev dfd94fb2f0
CI: Update issue template (#16517)
More updates to the ISSUE template
4 months ago
Eugene Yurtsev cc2e30fa13
CI: update the description used for privileged issue template (#16277)
Update description
4 months ago
Eugene Yurtsev 3b649f4331
CI: Add privileged version for issue creation (#16276)
Add privileged version for issue creation.

This adds a version of issue creation which is unstructured by design to
make it easier for maintainers to create issues.

Maintainers are expected to write / describe issues clearly.
4 months ago
Eugene Yurtsev c0d453d8ac
CI: Disable blank issues, add links to QA discussions & show and tell (#16275)
Update the issue template
4 months ago
Erick Friis e5878c467a
infra: scheduled testing env (#16239) 4 months ago
Erick Friis 2f348c695a
infra: add nvidia api secret to integration testing (#15972) 4 months ago
Erick Friis 50959abf0c
infra: google cse id integration test (#16238) 4 months ago
Erick Friis 92bc80483a
infra: google search api key (#16237) 4 months ago
purificant 3606c5d5e9
infra: update poetry 1.6.1 -> 1.7.1 (#15027) 4 months ago
Erick Friis 6a2889a4ec
infra: retry release if not found on test pypi (#15913)
<!-- Thank you for contributing to LangChain!

Please title your PR "<package>: <description>", where <package> is
whichever of langchain, community, core, experimental, etc. is being
modified.

Replace this entire comment with:
  - **Description:** a description of the change, 
  - **Issue:** the issue # it fixes if applicable,
  - **Dependencies:** any dependencies required for this change,
- **Twitter handle:** we announce bigger features on Twitter. If your PR
gets announced, and you'd like a mention, we'll gladly shout you out!

Please make sure your PR is passing linting and testing before
submitting. Run `make format`, `make lint` and `make test` from the root
of the package you've modified to check this locally.

See contribution guidelines for more information on how to write/run
tests, lint, etc: https://python.langchain.com/docs/contributing/

If you're adding a new integration, please include:
1. a test for the integration, preferably unit tests that do not rely on
network access,
2. an example notebook showing its use. It lives in
`docs/docs/integrations` directory.

If no one reviews your PR within a few days, please @-mention one of
@baskaryan, @eyurtsev, @hwchase17.
 -->
5 months ago
Eugene Yurtsev 45f49ca439
infra: fix issue preview (#15836)
Fixing the placeholder for the code example. GitHub collapses newlines
when
trying to use the text area, which is super confusing.
5 months ago
Eugene Yurtsev c425e6f740
More updates to issue template (#15833)
More update to issue template
5 months ago
Eugene Yurtsev 65980c22b8
Infra: Fix syntax error in BUG REPORT template (#15831)
Fix syntax error in issue template
5 months ago
Eugene Yurtsev e182d630f7
ISSUE_TEMPLATE: Update issue template (#15757)
Drop some fields, re-order, start directing folks towards QA.

---------

Co-authored-by: Erick Friis <erick@langchain.dev>
5 months ago
Bagatur 6432494f9d
infra: explicitly specify py path (#15826) 5 months ago
Eugene Yurtsev 7db680fd4b
CI: Fix template for questions (#15756)
CI: Workflow fix template for questions
5 months ago
Eugene Yurtsev ce68be67ad
Update template to direct questions to discussions rather than issues (#15721)
Update PR template to direct questions to discussions rather than issues
5 months ago
Erick Friis 98be1e5ed0
infra: title release action runs (#15612)
https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#run-name
5 months ago
Erick Friis 1a42ad353a
infra: vertex integration test creds (#15609) 5 months ago
Erick Friis ebc75c5ca7
openai[minor]: implement langchain-openai package (#15503)
Todo

- [x] copy over integration tests
- [x] update docs with new instructions in #15513 
- [x] add linear ticket to bump core -> community, community->langchain,
and core->openai deps
- [ ] (optional): add `pip install langchain-openai` command to each
notebook using it
- [x] Update docstrings to not need `openai` install
- [x] Add serialization
- [x] deprecate old models

Contributor steps:

- [x] Add secret names to manual integrations workflow in
.github/workflows/_integration_test.yml
- [x] Add secrets to release workflow (for pre-release testing) in
.github/workflows/_release.yml

Maintainer steps (Contributors should not do these):

- [x] set up pypi and test pypi projects
- [x] add credential secrets to Github Actions
- [ ] add package to conda-forge


Functional changes to existing classes:

- now relies on openai client v1 (1.6.1) via concrete dep in
langchain-openai package

Codebase organization

- some function calling stuff moved to
`langchain_core.utils.function_calling` in order to be used in both
community and langchain-openai
5 months ago
Erick Friis 1437872df9
infra: fail check_diffs if too many files changed (#15423)
Jobs like
https://github.com/langchain-ai/langchain/actions/runs/7389187843/job/20101494206
only receive the first 300 changed files. Because of the opportunity to
miss packages, better to auto-fail and manually run.

Checking that it does what I expect in #15424
5 months ago
Bagatur 63e0cae2b1
infra: fix min deps test (#15486) 5 months ago
Bagatur 54b58c03db
infra: add minimum deps pre release check (#15485) 5 months ago
Erick Friis a8f6f33cd9
infra: remove path filter on check_diffs (#15418)
CI should run on https://github.com/langchain-ai/langchain/pull/15412

But github only checks first 300 files:
https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#git-diff-comparisons

> Diffs are limited to 300 files. If there are files changed that aren't
matched in the first 300 files returned by the filter, the workflow will
not run. You may need to create more specific filters so that the
workflow will run automatically.
5 months ago
purificant 619cd3ce54
ci: upgrade actions (#15114)
This PR upgrades CI actions
[actions/setup-python](https://github.com/actions/setup-python/releases/tag/v5.0.0)
and
[google-github-actions/auth](https://github.com/google-github-actions/auth/releases/tag/v2.0.0)
5 months ago
Shorthills AI f59d0d3b20
Corrected an grammatical mistake (#15163)
Co-authored-by: Vishal <141389263+VishalYadavShorthillsAI@users.noreply.github.com>
Co-authored-by: Sanskar Tanwar <142409040+SanskarTanwarShorthillsAI@users.noreply.github.com>
Co-authored-by: UpneetShorthillsAI <144228282+UpneetShorthillsAI@users.noreply.github.com>
Co-authored-by: HarshGuptaShorthillsAI <144897987+HarshGuptaShorthillsAI@users.noreply.github.com>
Co-authored-by: AdityaKalraShorthillsAI <143726711+AdityaKalraShorthillsAI@users.noreply.github.com>
Co-authored-by: SakshiShorthillsAI <144228183+SakshiShorthillsAI@users.noreply.github.com>
Co-authored-by: AashiGuptaShorthillsAI <144897730+AashiGuptaShorthillsAI@users.noreply.github.com>
Co-authored-by: ShamshadAhmedShorthillsAI <144897733+ShamshadAhmedShorthillsAI@users.noreply.github.com>
5 months ago
Bagatur 99f839d6f3
infra: pr template update (#14963) 5 months ago
Erick Friis 8a3360edf6
anthropic: beta messages integration (#14928) 5 months ago
Erick Friis 795cf2ddda
together: package and embedding model (#14936) 5 months ago
Bagatur a5be9f9475
mistralai: Add langchain-mistralai partner package (#14783)
Co-authored-by: Chad Phillips <chad@apartmentlines.com>
5 months ago
Erick Friis 1acc7ffa3f
infra: cut down on integration steps (#14785)
<!-- Thank you for contributing to LangChain!

Replace this entire comment with:
  - **Description:** a description of the change, 
  - **Issue:** the issue # it fixes (if applicable),
  - **Dependencies:** any dependencies required for this change,
- **Tag maintainer:** for a quicker response, tag the relevant
maintainer (see below),
- **Twitter handle:** we announce bigger features on Twitter. If your PR
gets announced, and you'd like a mention, we'll gladly shout you out!

Please make sure your PR is passing linting and testing before
submitting. Run `make format`, `make lint` and `make test` to check this
locally.

See contribution guidelines for more information on how to write/run
tests, lint, etc:

https://github.com/langchain-ai/langchain/blob/master/.github/CONTRIBUTING.md

If you're adding a new integration, please include:
1. a test for the integration, preferably unit tests that do not rely on
network access,
2. an example notebook showing its use. It lives in `docs/extras`
directory.

If no one reviews your PR within a few days, please @-mention one of
@baskaryan, @eyurtsev, @hwchase17.
 -->

---------

Co-authored-by: Bagatur <baskaryan@gmail.com>
5 months ago
Erick Friis 8a07c56313
docs: developer docs (#14776)
Builds out a developer documentation section in the docs

- Links it from contributing.md
- Adds an initial guide on how to contribute an integration

---------

Co-authored-by: Bagatur <baskaryan@gmail.com>
5 months ago
William FH c5296fd42c
[Documentation] Updates to NVIDIA Playground/Foundation Model naming.… (#14770)
…  (#14723)

- **Description:** Minor updates per marketing requests. Namely, name
decisions (AI Foundation Models / AI Playground)
  - **Tag maintainer:** @hinthornw 

Do want to pass around the PR for a bit and ask a few more marketing
questions before merge, but just want to make sure I'm not working in a
vacuum. No major changes to code functionality intended; the PR should
be for documentation and only minor tweaks.

Note: QA model is a bit borked across staging/prod right now. Relevant
teams have been informed and are looking into it, and I'm placeholdered
the response to that of a working version in the notebook.

Co-authored-by: Vadim Kudlay <32310964+VKudlay@users.noreply.github.com>
6 months ago