langchain/tests/unit_tests
Mike Wang 512c24fc9c
[annotation improvement] Make AgentType->Class Conversion More Scalable (#3749)
In the current solution, AgentType and AGENT_TO_CLASS are placed in two
separate files and both manually maintained. This might cause
inconsistency when we update either of them.

— latest —
based on the discussion with hwchase17, we don’t know how to further use
the newly introduced AgentTypeConfig type, so it doesn’t make sense yet
to add it. Instead, it’s better to move the dictionary to another file
to keep the loading.py file clear. The consistency is a good point.
Instead of asserting the consistency during linting, we added a unittest
for consistency check. I think it works as auto unittest is triggered
every time with clear failure notice. (well, force push is possible, but
we all know what we are doing, so let’s show trust. :>)

~~This PR includes~~
- ~~Introduced AgentTypeConfig as the source of truth of all AgentType
related meta data.~~
- ~~Each AgentTypeConfig is a annotated class type which can be used for
annotation in other places.~~
- ~~Each AgentTypeConfig can be easily extended when we have more meta
data needs.~~
- ~~Strong assertion to ensure AgentType and AGENT_TO_CLASS are always
consistent.~~
- ~~Made AGENT_TO_CLASS automatically generated.~~

~~Test Plan:~~
- ~~since this change is focusing on annotation, lint is the major test
focus.~~
- ~~lint, format and test passed on local.~~
2023-04-28 21:17:28 -07:00
..
agents [annotation improvement] Make AgentType->Class Conversion More Scalable (#3749) 2023-04-28 21:17:28 -07:00
callbacks improve AsyncCallbackManager (#2410) 2023-04-05 09:31:42 +02:00
chains Add query parsing unit tests (#3672) 2023-04-27 13:42:12 -07:00
data
docstore Add DocstoreFn - lookup doc via arbitrary function (#3760) 2023-04-28 19:50:32 -07:00
document_loader Blob: Add validator and use future annotations (#3650) 2023-04-27 14:33:59 -04:00
evaluation Adding an in-context QA evaluation chain + chain of thought reasoning chain for improved accuracy (#2444) 2023-04-06 22:32:41 -07:00
llms Harrison/fix create sql agent (#2870) 2023-04-13 22:07:58 -07:00
memory Harrison/file chat history (#3198) 2023-04-19 21:05:20 -07:00
output_parsers Fix pytest collection warning (#3651) 2023-04-27 09:51:43 -07:00
prompts Validate input_variables when using jinja2 templates (#3140) 2023-04-19 16:18:32 -07:00
retrievers Generative Characters (#2859) 2023-04-16 21:41:00 -07:00
tools Add Shell Tool (#3335) 2023-04-28 11:10:43 -07:00
utilities Centralize logic for loading from LangChainHub, add ability to pin dependencies (#805) 2023-01-30 14:52:17 -08:00
vectorstores fix #3884 (#3475) 2023-04-24 19:54:15 -07:00
__init__.py
test_bash.py Persistent Bash Shell (#3580) 2023-04-26 15:20:28 -07:00
test_depedencies.py Add unit-test to catch changes to required deps (#3662) 2023-04-27 13:04:17 -04:00
test_document_transformers.py Contextual compression retriever (#2915) 2023-04-20 17:01:14 -07:00
test_formatting.py
test_math_utils.py Contextual compression retriever (#2915) 2023-04-20 17:01:14 -07:00
test_python.py Move PythonRepl -> langchain.utilities (#2917) 2023-04-15 10:50:25 -07:00
test_schema.py [simple][test] Added test case for schema.py (#3692) 2023-04-28 20:42:24 -07:00
test_sql_database_schema.py Suppress duckdb warning in unit tests explicitly (#3653) 2023-04-27 14:29:41 -04: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 Add unit test for _merge_splits function (#3513) 2023-04-25 10:02:59 -07:00