langserve
langserve copied to clipboard
httpcore.ConnectError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed
when call api invoke, return ssl error:
INFO: 127.0.0.1:55709 - "POST /test/invoke?config_hash=%E4%BD%A0%E5%A5%BD HTTP/1.1" 500 Internal Server Error
ERROR: Exception in ASGI application
Traceback (most recent call last):
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpx/_transports/default.py", line 72, in map_httpcore_exceptions
yield
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpx/_transports/default.py", line 377, in handle_async_request
resp = await self._pool.handle_async_request(req)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpcore/_async/connection_pool.py", line 256, in handle_async_request
raise exc from None
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpcore/_async/connection_pool.py", line 236, in handle_async_request
response = await connection.handle_async_request(
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpcore/_async/connection.py", line 101, in handle_async_request
raise exc
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpcore/_async/connection.py", line 78, in handle_async_request
stream = await self._connect(request)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpcore/_async/connection.py", line 156, in _connect
stream = await stream.start_tls(**kwargs)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpcore/_backends/anyio.py", line 67, in start_tls
with map_exceptions(exc_map):
File "/Users/zi.b.wang/.pyenv/versions/3.10.16/lib/python3.10/contextlib.py", line 153, in __exit__
self.gen.throw(typ, value, traceback)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpcore/_exceptions.py", line 14, in map_exceptions
raise to_exc(exc) from exc
httpcore.ConnectError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:1007)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/openai/_base_client.py", line 1529, in request
response = await self._client.send(
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpx/_client.py", line 1674, in send
response = await self._send_handling_auth(
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpx/_client.py", line 1702, in _send_handling_auth
response = await self._send_handling_redirects(
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpx/_client.py", line 1739, in _send_handling_redirects
response = await self._send_single_request(request)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpx/_client.py", line 1776, in _send_single_request
response = await transport.handle_async_request(request)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpx/_transports/default.py", line 376, in handle_async_request
with map_httpcore_exceptions():
File "/Users/zi.b.wang/.pyenv/versions/3.10.16/lib/python3.10/contextlib.py", line 153, in __exit__
self.gen.throw(typ, value, traceback)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/httpx/_transports/default.py", line 89, in map_httpcore_exceptions
raise mapped_exc(message) from exc
httpx.ConnectError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:1007)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/uvicorn/protocols/http/httptools_impl.py", line 409, in run_asgi
result = await app( # type: ignore[func-returns-value]
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in __call__
return await self.app(scope, receive, send)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/fastapi/applications.py", line 1054, in __call__
await super().__call__(scope, receive, send)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/starlette/applications.py", line 113, in __call__
await self.middleware_stack(scope, receive, send)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/starlette/middleware/errors.py", line 186, in __call__
raise exc
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/starlette/middleware/errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
raise exc
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/starlette/routing.py", line 716, in __call__
await self.middleware_stack(scope, receive, send)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/starlette/routing.py", line 736, in app
await route.handle(scope, receive, send)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/starlette/routing.py", line 290, in handle
await self.app(scope, receive, send)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/starlette/routing.py", line 78, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
raise exc
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/starlette/routing.py", line 75, in app
response = await f(request)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/fastapi/routing.py", line 302, in app
raw_response = await run_endpoint_function(
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/fastapi/routing.py", line 213, in run_endpoint_function
return await dependant.call(**values)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/langserve/server.py", line 503, in invoke
return await api_handler.invoke(request)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/langserve/api_handler.py", line 896, in invoke
output = await invoke_coro
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/langchain_core/language_models/chat_models.py", line 417, in ainvoke
llm_result = await self.agenerate_prompt(
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/langchain_core/language_models/chat_models.py", line 1034, in agenerate_prompt
return await self.agenerate(
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/langchain_core/language_models/chat_models.py", line 992, in agenerate
raise exceptions[0]
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/langchain_core/language_models/chat_models.py", line 1162, in _agenerate_with_cache
result = await self._agenerate(
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/langchain_openai/chat_models/base.py", line 1430, in _agenerate
raise e
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/langchain_openai/chat_models/base.py", line 1423, in _agenerate
raw_response = await self.async_client.with_raw_response.create(
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/openai/_legacy_response.py", line 381, in wrapped
return cast(LegacyAPIResponse[R], await func(*args, **kwargs))
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/openai/resources/chat/completions/completions.py", line 2583, in create
return await self._post(
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/openai/_base_client.py", line 1794, in post
return await self.request(cast_to, opts, stream=stream, stream_cls=stream_cls)
File "/Users/zi.b.wang/Projects/python_project/langchain_demo/.venv/lib/python3.10/site-packages/openai/_base_client.py", line 1561, in request
raise APIConnectionError(request=request) from err
openai.APIConnectionError: Connection error.
- langserve=0.32
- code like this:
import os
import httpx
from langchain_deepseek import ChatDeepSeek
from dotenv import load_dotenv
load_dotenv()
DEEPSEEK_API_KEY = os.getenv("DEEPSEEK_API_KEY")
model = ChatDeepSeek(
model="deepseek-chat",
api_key=DEEPSEEK_API_KEY,
temperature=0.5,
max_tokens=512,
http_client=httpx.Client(verify=False)
)
# --------------------------------------------
from fastapi import FastAPI
from fastapi.responses import RedirectResponse
from langserve import add_routes
import uvicorn
from model.deepseek_model import model
app = FastAPI()
@app.get("/")
async def redirect_root_to_docs():
return RedirectResponse("/docs")
# Edit this to add the chain you want to add
add_routes(app, model, path="/test")
if __name__ == "__main__":
uvicorn.run(app, host="0.0.0.0", port=8000,)
- dependencies list:
aiohappyeyeballs==2.6.1
aiohttp==3.12.15
aiosignal==1.4.0
annotated-types==0.7.0
anyio==4.10.0
async-timeout==4.0.3
attrs==25.3.0
backoff==2.2.1
bcrypt==4.3.0
beautifulsoup4==4.13.5
bs4==0.0.2
build==1.3.0
cachetools==5.5.2
certifi==2025.8.3
cffi==2.0.0
charset-normalizer==3.4.3
chromadb==1.0.21
click==8.2.1
coloredlogs==15.0.1
cryptography==45.0.7
dashscope==1.24.5
dataclasses-json==0.6.7
distro==1.9.0
durationpy==0.10
exceptiongroup==1.3.0
fastapi==0.116.2
filelock==3.19.1
flatbuffers==25.2.10
frozenlist==1.7.0
fsspec==2025.9.0
gitdb==4.0.12
GitPython==3.1.45
google-auth==2.40.3
googleapis-common-protos==1.70.0
gritql==0.2.0
grpcio==1.75.0
h11==0.16.0
hf-xet==1.1.10
httpcore==1.0.9
httptools==0.6.4
httpx==0.27.2
httpx-sse==0.4.1
huggingface-hub==0.34.6
humanfriendly==10.0
idna==3.10
importlib_metadata==8.7.0
importlib_resources==6.5.2
jiter==0.11.0
jsonpatch==1.33
jsonpointer==3.0.0
jsonschema==4.25.1
jsonschema-specifications==2025.9.1
kubernetes==33.1.0
langchain==0.3.27
langchain-cli==0.0.37
langchain-community==0.3.29
langchain-core==0.3.76
langchain-deepseek==0.1.4
langchain-milvus==0.2.1
langchain-ollama==0.3.8
langchain-openai==0.3.33
langchain-tavily==0.2.11
langchain-text-splitters==0.3.11
langgraph==0.6.7
langgraph-checkpoint==2.1.1
langgraph-prebuilt==0.6.4
langgraph-sdk==0.2.8
langserve==0.3.2
langsmith==0.4.27
markdown-it-py==4.0.0
marshmallow==3.26.1
mdurl==0.1.2
milvus-lite==2.5.1
mmh3==5.2.0
mpmath==1.3.0
multidict==6.6.4
mypy_extensions==1.1.0
numpy==2.2.6
oauthlib==3.3.1
ollama==0.5.3
onnxruntime==1.22.1
openai==1.107.2
opentelemetry-api==1.37.0
opentelemetry-exporter-otlp-proto-common==1.37.0
opentelemetry-exporter-otlp-proto-grpc==1.37.0
opentelemetry-proto==1.37.0
opentelemetry-sdk==1.37.0
opentelemetry-semantic-conventions==0.58b0
orjson==3.11.3
ormsgpack==1.10.0
overrides==7.7.0
packaging==25.0
pandas==2.3.2
posthog==5.4.0
propcache==0.3.2
protobuf==6.32.1
pyasn1==0.6.1
pyasn1_modules==0.4.2
pybase64==1.4.2
pycparser==2.23
pydantic==2.10.6
pydantic-settings==2.10.1
pydantic_core==2.27.2
Pygments==2.19.2
pymilvus==2.6.1
PyMySQL==1.1.2
PyPika==0.48.9
pyproject_hooks==1.2.0
python-dateutil==2.9.0.post0
python-dotenv==1.1.1
pytz==2025.2
PyYAML==6.0.2
referencing==0.36.2
regex==2025.9.1
requests==2.32.5
requests-oauthlib==2.0.0
requests-toolbelt==1.0.0
rich==14.1.0
rpds-py==0.27.1
rsa==4.9.1
shellingham==1.5.4
six==1.17.0
smmap==5.0.2
sniffio==1.3.1
soupsieve==2.8
SQLAlchemy==2.0.43
sse-starlette==1.8.2
starlette==0.48.0
sympy==1.14.0
tenacity==9.1.2
tiktoken==0.11.0
tokenizers==0.22.0
tomli==2.2.1
tomlkit==0.13.3
tqdm==4.67.1
typer==0.17.4
typing-inspect==0.9.0
typing-inspection==0.4.1
typing_extensions==4.15.0
tzdata==2025.2
ujson==5.11.0
urllib3==2.5.0
uvicorn==0.35.0
uvloop==0.21.0
watchfiles==1.1.0
websocket-client==1.8.0
websockets==15.0.1
xxhash==3.5.0
yarl==1.20.1
zipp==3.23.0
zstandard==0.25.0