Skip to content

Commit

Permalink
Merge branch 'master' into cc/pinecone
Browse files Browse the repository at this point in the history
  • Loading branch information
ccurme committed Jan 10, 2025
2 parents 6bb7da8 + df5ec45 commit 2d76ef9
Show file tree
Hide file tree
Showing 154 changed files with 2,453 additions and 1,100 deletions.
2 changes: 1 addition & 1 deletion cookbook/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ Notebook | Description
[press_releases.ipynb](https://github.com/langchain-ai/langchain/tree/master/cookbook/press_releases.ipynb) | Retrieve and query company press release data powered by [Kay.ai](https://kay.ai).
[program_aided_language_model.i...](https://github.com/langchain-ai/langchain/tree/master/cookbook/program_aided_language_model.ipynb) | Implement program-aided language models as described in the provided research paper.
[qa_citations.ipynb](https://github.com/langchain-ai/langchain/tree/master/cookbook/qa_citations.ipynb) | Different ways to get a model to cite its sources.
[rag_upstage_layout_analysis_groundedness_check.ipynb](https://github.com/langchain-ai/langchain/tree/master/cookbook/rag_upstage_layout_analysis_groundedness_check.ipynb) | End-to-end RAG example using Upstage Layout Analysis and Groundedness Check.
[rag_upstage_document_parse_groundedness_check.ipynb](https://github.com/langchain-ai/langchain/tree/master/cookbook/rag_upstage_document_parse_groundedness_check.ipynb) | End-to-end RAG example using Upstage Document Parse and Groundedness Check.
[retrieval_in_sql.ipynb](https://github.com/langchain-ai/langchain/tree/master/cookbook/retrieval_in_sql.ipynb) | Perform retrieval-augmented-generation (rag) on a PostgreSQL database using pgvector.
[sales_agent_with_context.ipynb](https://github.com/langchain-ai/langchain/tree/master/cookbook/sales_agent_with_context.ipynb) | Implement a context-aware ai sales agent, salesgpt, that can have natural sales conversations, interact with other systems, and use a product knowledge base to discuss a company's offerings.
[self_query_hotel_search.ipynb](https://github.com/langchain-ai/langchain/tree/master/cookbook/self_query_hotel_search.ipynb) | Build a hotel room search feature with self-querying retrieval, using a specific hotel recommendation dataset.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"# RAG using Upstage Layout Analysis and Groundedness Check\n",
"This example illustrates RAG using [Upstage](https://python.langchain.com/docs/integrations/providers/upstage/) Layout Analysis and Groundedness Check."
"# RAG using Upstage Document Parse and Groundedness Check\n",
"This example illustrates RAG using [Upstage](https://python.langchain.com/docs/integrations/providers/upstage/) Document Parse and Groundedness Check."
]
},
{
Expand All @@ -23,16 +23,16 @@
"from langchain_core.runnables.base import RunnableSerializable\n",
"from langchain_upstage import (\n",
" ChatUpstage,\n",
" UpstageDocumentParseLoader,\n",
" UpstageEmbeddings,\n",
" UpstageGroundednessCheck,\n",
" UpstageLayoutAnalysisLoader,\n",
")\n",
"\n",
"model = ChatUpstage()\n",
"\n",
"files = [\"/PATH/TO/YOUR/FILE.pdf\", \"/PATH/TO/YOUR/FILE2.pdf\"]\n",
"\n",
"loader = UpstageLayoutAnalysisLoader(file_path=files, split=\"element\")\n",
"loader = UpstageDocumentParseLoader(file_path=files, split=\"element\")\n",
"\n",
"docs = loader.load()\n",
"\n",
Expand Down
Original file line number Diff line number Diff line change
@@ -1 +1 @@
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
Original file line number Diff line number Diff line change
@@ -1 +1 @@
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
Original file line number Diff line number Diff line change
@@ -1 +1 @@
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
Loading

0 comments on commit 2d76ef9

Please sign in to comment.