用途:通过本地 Google Places API 代理搜索附近地点(餐厅、咖啡馆等)。采用两步流程:先解析位置,再搜索地点。
主要能力:提供 /ping 健康检查、/locations/resolve 位置解析、/places/search 地点搜索、/places/{place_id} 详情查询等接口。搜索支持 location_bias(lat、lng、radius_m)、filters(types、price_levels、min_rating、open_now)和 limit 参数。响应包含 place_id、name、address、location、rating、price_level、types、open_now 及 next_page_token,可用 page_token 翻页。
使用方式:在项目目录创建 .env 写入 GOOGLE_PLACES_API_KEY=your-key,然后执行 uv venv && uv pip install -e ".[dev]",再运行 uv run --env-file .env uvicorn local_places.main:app --host 127.0.0.1 --port 8000。可用 curl http://127.0.0.1:8000/ping 检查服务。
限制:filters.types 只能指定一个类型;price_levels 为 0-4 整数;min_rating 为 0-5 且以 0.5 递增;open_now 为布尔值;search 的 limit 为 1-20,resolve 的 limit 为 1-10;location_bias.radius_m 必须大于 0。需在 .env 或环境中提供 GOOGLE_PLACES_API_KEY。其他细节暂未提供。