惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Threatpost
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
S
Security Affairs
N
News and Events Feed by Topic
T
Tenable Blog
P
Proofpoint News Feed
W
WeLiveSecurity
Simon Willison's Weblog
Simon Willison's Weblog
Google DeepMind News
Google DeepMind News
C
CERT Recently Published Vulnerability Notes
Help Net Security
Help Net Security
I
Intezer
T
Threat Research - Cisco Blogs
S
Secure Thoughts
C
Cyber Attacks, Cyber Crime and Cyber Security
L
Lohrmann on Cybersecurity
AWS News Blog
AWS News Blog
Google Online Security Blog
Google Online Security Blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Know Your Adversary
Know Your Adversary
Project Zero
Project Zero
The Hacker News
The Hacker News
Security Archives - TechRepublic
Security Archives - TechRepublic
T
Tor Project blog
N
News | PayPal Newsroom
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Hacker News - Newest:
Hacker News - Newest: "LLM"
A
Arctic Wolf
Forbes - Security
Forbes - Security
O
OpenAI News
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Security Latest
Security Latest
P
Palo Alto Networks Blog
S
Schneier on Security
S
Securelist
C
Cybersecurity and Infrastructure Security Agency CISA
H
Heimdal Security Blog
V
Vulnerabilities – Threatpost
www.infosecurity-magazine.com
www.infosecurity-magazine.com
博客园_首页
T
Troy Hunt's Blog
Latest news
Latest news
Recent Announcements
Recent Announcements
MyScale Blog
MyScale Blog
人人都是产品经理
人人都是产品经理
L
LINUX DO - 热门话题
M
MIT News - Artificial intelligence
N
Netflix TechBlog - Medium
V
Visual Studio Blog
H
Hacker News: Front Page

LangChain Forum - Topics tagged python-help

Null-drift: A bare-metal O(1) Memory Store for continuous LangGraph agents Clarification needed: Assistant config vs context and graph initialization Proposal: a small local helper for readable run traces via PR Proxy Authentication Required 407 What is the right way to dynamically create and run a graph? Re-Implement claude code's dynamic workflow using langchian & deepagents How to define a correct state for multi-agent system Response Format Groq Model Pydantic I hope to get some recommendations for practical skills Interrupt does not work correctly in LangGraph The Qwen3.6b model in fireworks through initchatmodel reporting hugely inflated tokens For parallel execution in Node, should i use the functional API? Potential Enhancement: Django-Managed PostgresSaver Pre-interrupt() code re-runs on resume — anti-pattern, or is there a sanctioned way to detect resume? Interrupt parallel branch execution Best practices for self-hosting LangGraph Server OSS without LangGraph keys Dynamically Enabling/Disabling Graphs in a LangGraph Server at Runtime LangGraph thread copy can take 12+ minutes: recommended production pattern? Will DeltaChannel be the default for AgentState.messages, or expected to stay opt-in? Proposal: additional docs for implementing custom DB checkpointers or a guide on generic base checkpointer Prompt_cache_retention: '24h' supported in langchain agents and where to provide it, inside invoke or while creating client? Could RAG pipelines realistically cause deployment timeouts, is Render suitable for first-time RAG deployments? How do I use langchain_postgres' init_vectorstore_table correctly? Proposal: Graph-wide default error handler for StateGraph (fallback for nodes without error_handler) Support timedelta for CachePolicy.ttl, consistent with TimeoutPolicy Anyone confirms this issue that deepagent ui streaming is disturb by update in deepagent or bug issue Best Stack for Building AI Applications Seeking help regarding the connection between Websocket and tool calls Tool invocation error with empty error message when using `InjectedState` + `Command` return in async tool How to use @langchain/react Built llmsessioncontract on AgentMiddleware: runtime enforcement of tool-call protocols — feedback wanted Improving citation accuracy and reducing hallucinations in custom Parent-Child RAG pipeline (Gemma3:4B + FAISS+BM25 + Cross-encoder reranker) Built a live autonomous AI agent network using LangGraph-style economics — looking for feedback How to use tool calling using ChatLlamaCpp and Gemma 4 E4B with create_agent? The Docs says open router can be used with init_chat_model but throws an error Interested to contribute to langgraph postgre checkpointer for multiple adapter support SSL certificate error from httpx with LangGraph server [Feature Request] Wire allowed_msgpack_modules in langgraph.json Serving an agent with the LangGraph CLI dev command Proposal: implement delete_for_runs for SQLite checkpoint savers WikipediaLoader endup in JSONDecodeError Human-in-the-loop approval dashboard for LangGraph agents — open source, free to deploy Should interrupt() be split into two primitives — one for human input, one for s2s data fetching? Feature Request: Driver abstraction for checkpoint-postgres: to build support for asyncpg and other adapters .Interested to contribute to langgraph (python) Feature Request: @task metadata How should I provide an agent to a LangGraph server? Parallel astream() on the same compiled graph leaks messages between streams Where should I define the name and description for subagents? Add Qdrant-backed checkpoint saver and memory store (langgraph-checkpoint-qdrant) The output content has been corrupted Feature Request: Simple cryptographic provenance for who authorized what in LangGraph multi-agent graphs LangGraph + PostgreSQL: Chat history and summarization best practice Using SQLRecordManager multi-agent systems debugging agent-to-agent Proposal: Add save_local and load_local to USearch VectorStore (Feature Parity with FAISS) Tiny LangGraph -> Assay evidence sample from tasks v2 Help with local RAG pipeline – poor retrieval quality, wrong page numbers LOGIC.md — declarative reasoning contracts that compile to LangGraph StateGraph Distinguishing internal vs final streamed chunks in Supervisor multi-agent architecture Are people hitting race conditions in multi-agent LangChain setups? How do ContextEditingMiddleware and SummarizationMiddleware interact when used together?Combining ContextEditingMiddleware + SummarizationMiddleware — execution order and behavior when both trigger? How to register type in langgraph Are there any frontends for interacting with a LangGraph agent? Langchain.schema is not available while using in python code In-place model update on a compiled create_agent and per-subagent model update for deep agents - is this possible? Feature Request: Native Support for A2A Protocol (Remote Agents as Sub-Graphs) Feature Request: Image Input support for ChatMistralAI Multiple response formats when creating agents? Unable to parse docstring from OpenAI schema No cost displayed in LangSmith when using LiteLLM + LangGraph How should I deploy a self-hosted multi-agent system? New integration: langchain-w2a — LangChain tools for W2A-enabled websites LiteLLM Router in LangChain: Missing Model Name and Cost in LangSmith Traces Bogus warning messages after upgrading dependencies which could have security impact if not addressed `anyio.CancelScope(shield=True)` not working inside langgraph node Handling Non-PDF File Attachments in LangChain HumanMessage How are teams handling evals when agent pipelines span multiple LangSmith projects? Feature request: Configurable PostgreSQL schema for langgraph-checkpoint-postgres (parity with LangGraphJS) Using the useStream frontend API with custom FastAPI backend Qwen 3.5 tool calling How to propagate cancellation across multi-level LangGraph agents When to use config['configurable'] vs. context in graph nodes? Tool.func typing [DashScope] reasoning parameter on ChatOpenAI breaks subagent tool calling — use separate models as workaround Structured data fields (1000+): Dedicated LLM channel vs vectorized field names? PollerCompletionQueue._handle_events BlockingIOError spam in LangGraph Cloud logs Parallel Nodes: how to manage failures or exceptions With too many fields, how should deepagents handle this properly? [LangSmith Studio Issue] when resuming from an interrupt inside a subgraph. it doesn't properly resume, instead restarts Guarding tool calls against prompt injection / exfiltration Feature Discussion: Opt-In Recursive Long-Context Executor for LangGraph Persisting HITL payloads Multi-Agent Architecture Are dynamic tool lists allowed when using create_agent? Langgraph RemoteGraph How to make an image tool?
Hosting an agent server on Heroku
@alexk Alex · 2026-04-18 · via LangChain Forum - Topics tagged python-help

I’m trying to host an agent on Heroku as an Agent Server.

I’ve been following this guide so far: Self-host standalone servers - Docs by LangChain

According to this, it needs access to a Postgres DB and Redis Store.

And on Heroku, I use the container registry as I figure that using Heroku’s build-system where you just push to their repo won’t work: Container Registry & Runtime (Docker Deploys) | Heroku Dev Center

One major problem is that the Langgraph server expects DATABASE_URIand REDIS_URIas environment variables. Heroku though sets these by itself as DATABASE_URL and REDIS_URL and we can’t change them, and the connection strings can be rotated by Heroku anytime.

Hence, just duplicating these variables and copying over the connection strings won’t work either (not long term, at least).

So I wondered if there’s a way to either configure Langgraph to use different variables (looking into langgraph_api/config.py it doesn’t seem like it’s possible) - or if I can set the variables somewhere else at runtime, when the docker container starts up or something?

I’ve also seen these here, maybe this helps? If so, where to define these vars and how do I set them to my DATABASE_URL from the Heroku environment?

Here’s my agent.py file - we also see that it loads another DATABASE_URL but that’s the one containing production data which the agent is supposed to be answering questions about.

import os
from datetime import datetime, timedelta

import dotenv
import numpy as np
import pandas as pd
from langchain.agents import create_agent
from langchain_community.agent_toolkits import SQLDatabaseToolkit
from langchain_community.utilities import SQLDatabase
from langgraph.checkpoint.memory import MemorySaver
from langchain_experimental.tools import PythonREPLTool
from langchain_experimental.utilities import PythonREPL
from langchain_openai import ChatOpenAI

from system_prompts import SQL_AGENT_PROMPT

dotenv.load_dotenv(override=False)

# Use LM Studio for local models or OpenAI for cloud
USE_LOCAL = os.getenv("USE_LOCAL", "false").lower() == "true"
# Disable checkpointer for langgraph server (enabled by default)
DISABLE_CHECKPOINTER = os.getenv("DISABLE_CHECKPOINTER", "false").lower() == "true"

# just for local hosting
if USE_LOCAL:
    model = ChatOpenAI(
        # Model name doesn't matter for LM Studio
        model=os.getenv("LOCAL_MODEL", "local-model"),
        temperature=0,
        streaming=True,
        base_url=os.getenv("LOCAL_BASE_URL", "http://localhost:1234/v1"),
        # LM Studio doesn't require API key
        api_key="not-needed",
    )
else:
    model = ChatOpenAI(model="gpt-5.1", temperature=0, streaming=True)


# was used for former deployment, might be obsolete
def normalize_db_uri(uri: str) -> str:
    """
    Normalize database connection URIs.
    - Convert 'postgres://' (Heroku) to 'postgresql://' (SQLAlchemy)
    """
    if not uri:
        return uri
    if uri.startswith("postgres://"):
        return uri.replace("postgres://", "postgresql://", 1)
    return uri


database_url = os.getenv("DATABASE_URL")
database_url = normalize_db_uri(database_url)

db = SQLDatabase.from_uri(database_url)

toolkit = SQLDatabaseToolkit(db=db, llm=model)

tools = [tool for tool in toolkit.get_tools() if
         tool.name != "sql_db_query_checker"]

# Add Python REPL tool for code execution with restricted globals
# Create Python REPL with restricted globals
python_repl_instance = PythonREPL(
    _globals={
        "pd": pd,
        "pandas": pd,
        "np": np,
        "numpy": np,
        "datetime": datetime,
        "timedelta": timedelta,
    }
)

# Create the tool with custom description
python_repl = PythonREPLTool(python_repl=python_repl_instance)
python_repl.description = (
    "A Python shell for executing code. Use this to process data, "
    "perform calculations, filter results, or do multi-step analysis. "
    "Input should be valid Python code. Available libraries: pandas (pd), "
    "numpy (np), datetime. Results from SQL queries can be converted to "
    "DataFrames for processing."
)
tools.append(python_repl)

system_prompt = SQL_AGENT_PROMPT.format(
    dialect=db.dialect,
    top_k=5,
)

checkpointer = None if DISABLE_CHECKPOINTER else MemorySaver()

agent = create_agent(
    model, tools, system_prompt=system_prompt, checkpointer=checkpointer
)