mirror of
https://github.com/hwchase17/langchain
synced 2024-11-06 03:20:49 +00:00
4fda7bf4f2
This pull request addresses and fixes exception handling in the UpstageLayoutAnalysisParser and enhances the test coverage by adding error exception tests for the document loader. These improvements ensure robust error handling and increase the reliability of the system when dealing with external API calls and JSON responses. ### Changes Made 1. Fix Request Exception Handling: - Issue: The existing implementation of UpstageLayoutAnalysisParser did not properly handle exceptions thrown by the requests library, which could lead to unhandled exceptions and potential crashes. - Solution: Added comprehensive exception handling for requests.RequestException to catch any request-related errors. This includes logging the error details and raising a ValueError with a meaningful error message. 2. Add Error Exception Tests for Document Loader: - New Tests: Introduced new test cases to verify the robustness of the UpstageLayoutAnalysisLoader against various error scenarios. The tests ensure that the loader gracefully handles: - RequestException: Simulates network issues or invalid API requests to ensure appropriate error handling and user feedback. - JSONDecodeError: Simulates scenarios where the API response is not a valid JSON, ensuring the system does not crash and provides clear error messaging. |
||
---|---|---|
.. | ||
langchain_upstage | ||
scripts | ||
tests | ||
.gitignore | ||
LICENSE | ||
Makefile | ||
poetry.lock | ||
pyproject.toml | ||
README.md |
langchain-upstage
This package contains the LangChain integrations for Upstage through their APIs.
Installation and Setup
- Install the LangChain partner package
pip install -U langchain-upstage
- Get an Upstage api key from Upstage Console and set it as an environment variable (
UPSTAGE_API_KEY
)
Chat Models
This package contains the ChatUpstage
class, which is the recommended way to interface with Upstage models.
See a usage example
Embeddings
See a usage example
Use solar-embedding-1-large
model for embeddings. Do not add suffixes such as -query
or -passage
to the model name.
UpstageEmbeddings
will automatically add the suffixes based on the method called.