langchain/tests/unit_tests
Zach Jones 13d1df2140
Feature: AgentExecutor execution time limit (#2399)
`AgentExecutor` already has support for limiting the number of
iterations. But the amount of time taken for each iteration can vary
quite a bit, so it is difficult to place limits on the execution time.
This PR adds a new field `max_execution_time` to the `AgentExecutor`
model. When called asynchronously, the agent loop is wrapped in an
`asyncio.timeout()` context which triggers the early stopping response
if the time limit is reached. When called synchronously, the agent loop
checks for both the max_iteration limit and the time limit after each
iteration.

When used asynchronously `max_execution_time` gives really tight control
over the max time for an execution chain. When used synchronously, the
chain can unfortunately exceed max_execution_time, but it still gives
more control than trying to estimate the number of max_iterations needed
to cap the execution time.

---------

Co-authored-by: Zachary Jones <zjones@zetaglobal.com>
2023-04-06 12:54:32 -07:00
..
agents Feature: AgentExecutor execution time limit (#2399) 2023-04-06 12:54:32 -07:00
callbacks improve AsyncCallbackManager (#2410) 2023-04-05 09:31:42 +02:00
chains Removed duplicate BaseModel dependencies (#2471) 2023-04-06 12:45:16 -07:00
data Prompt from file proof of concept using plain text (#127) 2022-11-13 13:15:30 -08:00
docstore Harrison/document cleanup (#2062) 2023-03-27 16:32:55 -07:00
document_loader rm pandas dependency (#2102) 2023-03-28 08:38:19 -07:00
llms Removed duplicate BaseModel dependencies (#2471) 2023-04-06 12:45:16 -07:00
output_parsers PydanticOutputParser unit test (#2047) 2023-03-27 14:32:56 -07:00
prompts big docs refactor (#1978) 2023-03-26 19:49:46 -07:00
tools Harrison/openapi spec (#2474) 2023-04-06 09:47:37 -07:00
utilities Centralize logic for loading from LangChainHub, add ability to pin dependencies (#805) 2023-01-30 14:52:17 -08:00
__init__.py initial commit 2022-10-24 14:51:15 -07:00
test_bash.py skip unit tests that fail in Windows (#2238) 2023-04-01 12:52:21 -07:00
test_formatting.py initial commit 2022-10-24 14:51:15 -07:00
test_python.py Harrison/multiline commands (#2280) 2023-04-01 12:54:06 -07:00
test_sql_database_schema.py sql: do not hard code the LIMIT clause in the table_info section (#1563) 2023-03-13 23:08:27 -07:00
test_sql_database.py sql: do not hard code the LIMIT clause in the table_info section (#1563) 2023-03-13 23:08:27 -07:00
test_text_splitter.py Harrison/shallow metadata (#1599) 2023-03-11 09:18:25 -08:00