content: [tool.poetry]
  name = "langchain-glm"
  version = "0.0.2"
  description = ""
  authors = ["glide-the <z2533736852@gamil.com>"]
  readme = "README.md"
  packages = [
      {include = "langchain_glm"}
  ]
  license = "MIT"
  
  [tool.poetry.dependencies]
  python = ">=3.8.1,<3.12,!=3.9.7"
  zhipuai = { version = ">=2.1.0.20240521", python = ">=3.8.1,<3.12,!=3.9.7" }
  langchain = { version = ">=0.2.2,<0.3", python = ">=3.8.1,<3.12,!=3.9.7" }
  langchainhub = { version = ">=0.1.14,<0.3", python=">=3.8.1,<3.9.7 || >3.9.7,<4.0" }
  langchain-community = { version = ">=0.2.0,<0.3", python=">=3.8.1,<3.9.7 || >3.9.7,<4.0" }
  langchain-experimental = { version = ">=0.0.58,<0.3", python=">=3.8.1,<3.9.7 || >3.9.7,<4.0" }
  
  
  
  [tool.poetry.group.test.dependencies]
  # The only dependencies that should be added are
  # dependencies used for running tests (e.g., pytest, freezegun, response).
  # Any dependencies that do not meet that criteria will be removed.
  pytest = "^7.3.0"
  pytest-cov = "^4.0.0"
  pytest-dotenv = "^0.5.2"
  duckdb-engine = "^0.9.2"
  pytest-watcher = "^0.2.6"
  freezegun = "^1.2.2"
  responses = "^0.22.0"
  pytest-asyncio = "^0.23.2"
  lark = "^1.1.5"
  pandas = "^2.0.0"
  pytest-mock = "^3.10.0"
  pytest-socket = "^0.6.0"
  syrupy = "^4.0.2"
  requests-mock = "^1.11.0"
  
  langchain-openai = { version = ">=0.0.6", python = ">=3.8.1,<3.12,!=3.9.7" }
  
  
  [tool.poetry.group.streamlit]
  optional = true
  
  [tool.poetry.group.streamlit.dependencies]
  
  fastapi = "~0.109.2"
  sse_starlette = "~1.8.2"
  uvicorn = ">=0.27.0.post1"
  # webui
  streamlit = "1.34.0"
  streamlit-option-menu = "0.3.12"
  streamlit-antd-components = "0.3.1"
  streamlit-chatbox = "1.1.12.post4"
  streamlit-modal = "0.1.0"
  streamlit-aggrid = "1.0.5"
  streamlit-extras = "0.4.2"
  
  
  [tool.poetry.group.lint]
  optional = true
  
  [tool.poetry.group.lint.dependencies]
  ruff = "^0.1.5"
  
  
  
  [tool.poetry.group.dev]
  optional = true
  
  [tool.poetry.group.dev.dependencies]
  jupyter = "^1.0.0"
  setuptools = "^67.6.1"
  
  [tool.poetry.extras]
  
  
  
  [tool.ruff]
  exclude = [
      "tests/examples/non-utf8-encoding.py",
      "tests/integration_tests/examples/non-utf8-encoding.py",
  ]
  
  [tool.ruff.lint]
  select = [
      "E", # pycodestyle
      "F", # pyflakes
      "I", # isort
      "T201", # print
  ]
  
  [tool.mypy]
  ignore_missing_imports = "True"
  disallow_untyped_defs = "True"
  exclude = ["notebooks", "examples", "example_data"]
  
  [tool.coverage.run]
  omit = [
      "tests/*",
  ]
  
  [build-system]
  requires = ["poetry-core>=1.0.0", "poetry-plugin-pypi-mirror==0.4.2"]
  build-backend = "poetry.core.masonry.api"
  
  [tool.pytest.ini_options]
  # --strict-markers will raise errors on unknown marks.
  # https://docs.pytest.org/en/7.1.x/how-to/mark.html#raising-errors-on-unknown-marks
  #
  # https://docs.pytest.org/en/7.1.x/reference/reference.html
  # --strict-config       any warnings encountered while parsing the `pytest`
  #                       section of the configuration file raise errors.
  #
  # https://github.com/tophat/syrupy
  # --snapshot-warn-unused    Prints a warning on unused snapshots rather than fail the test suite.
  addopts = "--strict-markers --strict-config --durations=5 --snapshot-warn-unused -svv"
  # Registering custom markers.
  # https://docs.pytest.org/en/7.1.x/example/markers.html#registering-markers
  markers = [
      "requires: mark tests as requiring a specific library",
      "scheduled: mark tests to run in scheduled testing",
      "compile: mark placeholder test used to compile integration tests without running them"
  ]
  asyncio_mode = "auto"
  
  
  
  [tool.codespell]
  skip = '.git,*.pdf,*.svg,*.pdf,*.yaml,*.ipynb,poetry.lock,*.min.js,*.css,package-lock.json,example_data,_dist,examples,*.trig,*.json,*.md,*.html,*.txt,*.csv'
  # Ignore latin etc
  ignore-regex = '.*(Stati Uniti|Tense=Pres).*'
  # whats is a typo but used frequently in queries so kept as is
  # aapply - async apply
  # unsecure - typo but part of API, decided to not bother for now
  ignore-words-list = 'momento,collison,ned,foor,reworkd,parth,whats,aapply,mysogyny,unsecure,damon,crate,aadd,symbl,precesses,accademia,nin'
  
  [tool.poetry.plugins.dotenv]
  ignore = "false"
  dotenv = "dotenv:plugin"
  
  # https://python-poetry.org/docs/repositories/
  #[[tool.poetry.source]]
  #name = "tsinghua"
  #url = "https://pypi.tuna.tsinghua.edu.cn/simple/"
  #priority = "default"
  