Skip to content

Commit 4fb45af

Browse files
[pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
1 parent 81f3299 commit 4fb45af

2 files changed

Lines changed: 14 additions & 20 deletions

File tree

leafmap/ai.py

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -60,13 +60,13 @@
6060
3. 代码结构必须是:
6161
import leafmap
6262
# 可选:import geopandas as gpd, pandas as pd, numpy as np, matplotlib...
63-
63+
6464
m = leafmap.Map(center=[纬度, 经度], zoom=缩放级别)
6565
# ... 添加图层、数据、标注 ...
66-
66+
6767
# 最后一行导出 HTML(OUTPUT_PATH 变量会自动替换为输出路径)
6868
m.to_html(OUTPUT_PATH)
69-
69+
7070
4. 必须通过变量 OUTPUT_PATH 保存地图,不要硬编码其他输出路径
7171
5. 如果用户描述中需要真实地理数据(如河流、行政边界等),优先尝试使用内置数据或示例数据:
7272
- leafmap 自带示例数据可通过 leafmap.sample_data 或 folium 内置 GeoJSON 获取
@@ -100,9 +100,7 @@ def __init__(
100100
or os.environ.get("LEAFMAP_LLM_BASE_URL")
101101
or "https://api.deepseek.com/v1"
102102
)
103-
self.api_key = (
104-
api_key or os.environ.get("LEAFMAP_LLM_API_KEY") or ""
105-
)
103+
self.api_key = api_key or os.environ.get("LEAFMAP_LLM_API_KEY") or ""
106104
self.model = model or os.environ.get("LEAFMAP_LLM_MODEL") or "deepseek-chat"
107105
self.temperature = temperature
108106
self.max_tokens = max_tokens
@@ -231,9 +229,7 @@ def _check_ast_safety(code: str) -> None:
231229
raise SafetyError(f"检测到危险魔法属性引用: {node.value!r}")
232230

233231

234-
def _safe_import(
235-
name, globals=None, locals=None, fromlist=(), level=0
236-
):
232+
def _safe_import(name, globals=None, locals=None, fromlist=(), level=0):
237233
"""受限 __import__:仅允许白名单模块导入(运行时兜底,防动态导入绕过)。"""
238234
root = name.split(".")[0]
239235
if root not in ALLOWED_IMPORTS and name not in ALLOWED_IMPORTS:
@@ -650,7 +646,9 @@ def natural_map(
650646
while (not result["ok"]) and (attempt < max_repairs):
651647
attempt += 1
652648
if verbose:
653-
print(f"[leafmap.ai] 第 {attempt}/{max_repairs} 次修复: {result.get('error')}")
649+
print(
650+
f"[leafmap.ai] 第 {attempt}/{max_repairs} 次修复: {result.get('error')}"
651+
)
654652
try:
655653
code = repair_code(
656654
code,
@@ -725,9 +723,7 @@ def demo():
725723
try:
726724
import gradio as gr
727725
except ImportError as e:
728-
raise ImportError(
729-
"Gradio 未安装,请先执行: pip install gradio"
730-
) from e
726+
raise ImportError("Gradio 未安装,请先执行: pip install gradio") from e
731727

732728
def _generate(description: str, max_repairs: int, show_code: bool):
733729
if not description.strip():

leafmap/cli.py

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,7 @@ def ai_map(
3434
try:
3535
from .ai import natural_map
3636
except ImportError as e:
37-
raise ImportError(
38-
"leafmap.ai 模块不可用,请确认已安装依赖。"
39-
) from e
37+
raise ImportError("leafmap.ai 模块不可用,请确认已安装依赖。") from e
4038

4139
natural_map(
4240
description,
@@ -58,9 +56,7 @@ def ai_demo() -> None:
5856
try:
5957
from .ai import demo
6058
except ImportError as e:
61-
raise ImportError(
62-
"leafmap.ai 模块不可用,请确认已安装依赖。"
63-
) from e
59+
raise ImportError("leafmap.ai 模块不可用,请确认已安装依赖。") from e
6460
demo()
6561

6662

@@ -663,7 +659,9 @@ def main():
663659
ai_parser = subparsers.add_parser(
664660
"ai-map", help="Generate a map from natural language using LLM"
665661
)
666-
ai_parser.add_argument("description", help="Map description, e.g. '南京市河流分布图'")
662+
ai_parser.add_argument(
663+
"description", help="Map description, e.g. '南京市河流分布图'"
664+
)
667665
ai_parser.add_argument(
668666
"--output",
669667
help="Output HTML file path (default: auto temp file)",

0 commit comments

Comments
 (0)