diff --git a/app/api/ai-search/route.ts b/app/api/ai-search/route.ts index f00ee8a..0cf483e 100644 --- a/app/api/ai-search/route.ts +++ b/app/api/ai-search/route.ts @@ -15,48 +15,57 @@ Analysiere die Beschreibung des Nutzers und erstelle 2–4 Google-Maps-optimiert ## Feldmuster - **query**: Die Branche oder Tätigkeit — so kurz wie möglich, auf Deutsch, wie ein Mensch bei Google Maps tippt. Keine Adjektive wie "klein" oder "professionell". Keine Firmennamen. Keine URLs. -- **region**: Bundesland, Stadt oder geografisches Gebiet. Wenn der Nutzer eine große Region nennt (z.B. "Deutschland" oder "Bayern"), splitte sinnvoll auf mehrere Städte oder Bundesländer auf um Abdeckung zu maximieren. -- **count**: Wie viele Ergebnisse pro Query gewünscht sind. Leite das aus dem Kontext ab — wenn der Nutzer eine Zahl nennt, verteile sie auf die Queries. Wenn keine Zahl genannt wird, wähle 50 als Standard. Minimum 25, Maximum 100 pro Query. +- **region**: Bundesland, Stadt oder geografisches Gebiet. Wenn der Nutzer eine große Region nennt (z.B. "Deutschland" oder "Bayern"), splitte sinnvoll auf mehrere Städte oder Bundesländer auf um mehr Ergebnisse zu erzielen. + +## Priorisierung + +Wähle immer den geläufigsten, meistgesuchten Begriff für eine Branche — nicht Nischenbegriffe oder Synonyme. Beispiele: +- "Dachdecker" vor "Spengler" oder "Klempner" +- "Elektriker" vor "Elektroinstallateur" +- "Steuerberater" vor "Steuerkanzlei" +- "Solaranlage" vor "Photovoltaik Fachbetrieb" + +Wenn der Nutzer mehrere Branchen nennt, priorisiere die volumenstärkste zuerst. ## Splitting-Strategie Nutze mehrere Queries wenn: - Die Region zu groß ist für eine Suche (Deutschland → München, Hamburg, Berlin, Köln) -- Es mehrere verwandte Branchen gibt ("Dachdecker und Spengler" → je eine Query) +- Der Nutzer explizit mehrere verschiedene Branchen nennt (dann je eine Query pro Branche) - Der Nutzer breite Abdeckung möchte Maximal 4 Queries. Keine Duplikate (gleiche query + gleiche region). ## Beispiele -Eingabe: "Ich suche Dachdecker in Bayern, circa 80 Firmen" +Eingabe: "Dachdecker in Bayern" Ausgabe: [ - { "query": "Dachdecker", "region": "München", "count": 40 }, - { "query": "Dachdecker", "region": "Nürnberg", "count": 40 } + { "query": "Dachdecker", "region": "München" }, + { "query": "Dachdecker", "region": "Nürnberg" } ] -Eingabe: "Steuerberater und Wirtschaftsprüfer in ganz Deutschland" +Eingabe: "Steuerberater in ganz Deutschland" Ausgabe: [ - { "query": "Steuerberater", "region": "Bayern", "count": 50 }, - { "query": "Steuerberater", "region": "NRW", "count": 50 }, - { "query": "Wirtschaftsprüfer", "region": "Hamburg", "count": 50 }, - { "query": "Wirtschaftsprüfer", "region": "Berlin", "count": 50 } + { "query": "Steuerberater", "region": "Bayern" }, + { "query": "Steuerberater", "region": "NRW" }, + { "query": "Steuerberater", "region": "Hamburg" }, + { "query": "Steuerberater", "region": "Berlin" } ] -Eingabe: "Solaranlagen Installateure in der Nähe von Stuttgart" +Eingabe: "Solaranlagen Installateure und Elektriker in Stuttgart" Ausgabe: [ - { "query": "Solaranlage Installateur", "region": "Stuttgart", "count": 50 }, - { "query": "Photovoltaik", "region": "Stuttgart", "count": 50 } + { "query": "Solaranlage", "region": "Stuttgart" }, + { "query": "Elektriker", "region": "Stuttgart" } ] -Eingabe: "Kleine Metallbaubetriebe in Süddeutschland" +Eingabe: "Metallbaubetriebe in Süddeutschland" Ausgabe: [ - { "query": "Metallbau", "region": "Bayern", "count": 50 }, - { "query": "Metallbau", "region": "Baden-Württemberg", "count": 50 } + { "query": "Metallbau", "region": "Bayern" }, + { "query": "Metallbau", "region": "Baden-Württemberg" } ] ## Ausgabeformat @@ -122,7 +131,7 @@ export async function POST(req: NextRequest) { .map(q => ({ query: q.query.trim(), region: (q.region ?? "").trim(), - count: Math.min(Math.max(Number(q.count) || 50, 25), 100), + count: 50, })); return NextResponse.json({ queries }); diff --git a/components/search/AiSearchModal.tsx b/components/search/AiSearchModal.tsx index 32076a7..ac5680e 100644 --- a/components/search/AiSearchModal.tsx +++ b/components/search/AiSearchModal.tsx @@ -173,7 +173,6 @@ export function AiSearchModal({ onStart, onClose }: AiSearchModalProps) { )}
- {q.count} Leads