diff --git a/templates/sql-research-assistant/.gitignore b/templates/sql-research-assistant/.gitignore new file mode 100644 index 0000000000000..bee8a64b79a99 --- /dev/null +++ b/templates/sql-research-assistant/.gitignore @@ -0,0 +1 @@ +__pycache__ diff --git a/templates/sql-research-assistant/LICENSE b/templates/sql-research-assistant/LICENSE new file mode 100644 index 0000000000000..426b65090341f --- /dev/null +++ b/templates/sql-research-assistant/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2023 LangChain, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/templates/sql-research-assistant/README.md b/templates/sql-research-assistant/README.md new file mode 100644 index 0000000000000..362c546e8b295 --- /dev/null +++ b/templates/sql-research-assistant/README.md @@ -0,0 +1,62 @@ +# sql-research-assistant + +This package does research over a SQL database + +## Usage + +To use this package, you should first have the LangChain CLI installed: + +```shell +pip install -U langchain-cli +``` + +To create a new LangChain project and install this as the only package, you can do: + +```shell +langchain app new my-app --package sql-research-assistant +``` + +If you want to add this to an existing project, you can just run: + +```shell +langchain app add sql-research-assistant +``` + +And add the following code to your `server.py` file: +```python +from sql_research_assistant import chain as sql_research_assistant_chain + +add_routes(app, sql_research_assistant_chain, path="/sql-research-assistant") +``` + +(Optional) Let's now configure LangSmith. +LangSmith will help us trace, monitor and debug LangChain applications. +LangSmith is currently in private beta, you can sign up [here](https://smith.langchain.com/). +If you don't have access, you can skip this section + + +```shell +export LANGCHAIN_TRACING_V2=true +export LANGCHAIN_API_KEY= +export LANGCHAIN_PROJECT= # if not specified, defaults to "default" +``` + +If you are inside this directory, then you can spin up a LangServe instance directly by: + +```shell +langchain serve +``` + +This will start the FastAPI app with a server is running locally at +[http://localhost:8000](http://localhost:8000) + +We can see all templates at [http://127.0.0.1:8000/docs](http://127.0.0.1:8000/docs) +We can access the playground at [http://127.0.0.1:8000/sql-research-assistant/playground](http://127.0.0.1:8000/sql-research-assistant/playground) + +We can access the template from code with: + +```python +from langserve.client import RemoteRunnable + +runnable = RemoteRunnable("http://localhost:8000/sql-research-assistant") +``` \ No newline at end of file diff --git a/templates/sql-research-assistant/pyproject.toml b/templates/sql-research-assistant/pyproject.toml new file mode 100644 index 0000000000000..fd36f615cce8a --- /dev/null +++ b/templates/sql-research-assistant/pyproject.toml @@ -0,0 +1,24 @@ +[tool.poetry] +name = "sql-research-assistant" +version = "0.0.1" +description = "" +authors = [] +readme = "README.md" + +[tool.poetry.dependencies] +python = ">=3.8.1,<4.0" +langchain = ">=0.0.313, <0.1" +openai = "^0.28.1" + +[tool.poetry.group.dev.dependencies] +langchain-cli = ">=0.0.4" +fastapi = "^0.104.0" +sse-starlette = "^1.6.5" + +[tool.langserve] +export_module = "sql_research_assistant" +export_attr = "chain" + +[build-system] +requires = ["poetry-core"] +build-backend = "poetry.core.masonry.api" diff --git a/templates/sql-research-assistant/tests/__init__.py b/templates/sql-research-assistant/tests/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d