langchain/tests/integration_tests
Ankush Gola bc7e56e8df
Add asyncio support for LLM (OpenAI), Chain (LLMChain, LLMMathChain), and Agent (#841)
Supporting asyncio in langchain primitives allows for users to run them
concurrently and creates more seamless integration with
asyncio-supported frameworks (FastAPI, etc.)

Summary of changes:

**LLM**
* Add `agenerate` and `_agenerate`
* Implement in OpenAI by leveraging `client.Completions.acreate`

**Chain**
* Add `arun`, `acall`, `_acall`
* Implement them in `LLMChain` and `LLMMathChain` for now

**Agent**
* Refactor and leverage async chain and llm methods
* Add ability for `Tools` to contain async coroutine
* Implement async SerpaPI `arun`

Create demo notebook.

Open questions:
* Should all the async stuff go in separate classes? I've seen both
patterns (keeping the same class and having async and sync methods vs.
having class separation)
2023-02-07 21:21:57 -08:00
..
chains Harrison/improve memory (#432) 2022-12-27 08:23:51 -05:00
embeddings rfc: instruct embeddings (#811) 2023-02-02 08:44:02 -08:00
llms Add asyncio support for LLM (OpenAI), Chain (LLMChain, LLMMathChain), and Agent (#841) 2023-02-07 21:21:57 -08:00
vectorstores Harrison/save faiss (#916) 2023-02-06 21:44:50 -08:00
__init__.py
test_googlesearch_api.py Harrison/new search engine (#477) 2022-12-30 08:06:57 -05:00
test_ngram_overlap_example_selector.py Harrison/ngram example (#846) 2023-02-02 09:44:42 -08:00
test_nlp_text_splitters.py OptimizedPrompt -- k-shot example choice backed by semantic search (#91) 2022-11-09 21:15:42 -08:00
test_serpapi.py move search to not be a chain (#226) 2022-11-29 20:07:44 -08:00
test_text_splitter.py Add alternative token-based text splitter (#816) 2023-02-02 19:55:13 -08:00
test_wolfram_alpha_api.py Harrison/wolfram alpha (#579) 2023-01-11 05:52:19 -08:00