用途:通过本地 Google Places API 代理搜索附近地点(餐厅、咖啡馆等),采用两步流程:先解析位置,再搜索地点。
主要能力:提供 /ping 健康检查、/locations/resolve 位置解析、/places/search 地点搜索、/places/{place_id} 详情查询等接口。搜索支持 location_bias(经纬度与半径)、filters(类型、价格等级、最低评分、是否营业中)和 limit 分页。
使用方式:在项目目录创建 .env 并写入 GOOGLE_PLACES_API_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 调用接口,例如先 POST /locations/resolve 解析位置,再用返回坐标 POST /places/search 搜索,最后 GET /places/{place_id} 获取详情。
适用场景:需要本地代理调用 Google Places 的对话式地点推荐、附近搜索等。
限制:filters.types 只能指定一个类型;price_levels 为 0-4 整数;min_rating 为 0-5 且以 0.5 递增;limit 搜索为 1-20、解析为 1-10;radius_m 必须大于 0。需有效的 GOOGLE_PLACES_API_KEY。