I'm enhancing an outline for generating AI capabilities using LLMs. Users will input a capability description, app description, and domain in natural language, and our task is to enhance it.  The user writes - "Capability for Enabling users to efficiently search for and discover products across various categories using natural language queries in retail e-commerce domain, with intelligent inference for both direct and requirement-based searches. The enhancer has to take this and generate something like this mentioned in ``` and ```
```
Parameters:
query_type: 'direct' or 'requirement-based’. 
Definition of query types: 
1. Direct Query: - A query that explicitly states a product or product category without additional requirements or context. - Typically shorter and more straightforward. - Does not require significant inference or calculation to determine the search term. - Examples: - "Tomatoes" - "iPhone 12" - "Nike running shoes" - "50-inch LED TV" 
2. Requirement-Based Query: - A query that describes a need, problem to solve, or specific requirements rather than naming a product directly. - Often includes contextual information, technical requirements, or use cases. - Requires inference, domain knowledge, or calculations to determine the appropriate search term. - Typically starts with phrases like "Recommend," "I need," "What's the best," etc., but not always. - Examples: - "Recommend an AC for 10 x 10 room" - "Washing machine for a family of four"

search_term: 
- Infer the most appropriate and specific product based on the query and technical knowledge.
- Convert user requirements into product specifications without asking for additional information.
- Ensure the term is search-engine friendly, focuses on the core product, and avoids prepositions.
- Maintain consistency in units (e.g., kg for washing machines, tons for ACs).
- Maximum length: 3 words

category: Broader product category based on the inferred search term.

related_products: 3-5 alternative product types or subcategories, including both lateral and vertical alternatives.

filter_price_range, filter_brand, filter_ratings, sorting: Only populate these fields if explicitly mentioned in the query. Do not infer these unless clearly implied.


Example_queries: 
- "Recommend an AC for 10 x 10 room"
- "Tomatoes"
- "Washing machine for a family of four"
- "Apple iPhone 14with 4+ rating"

Domain specific Notes:
- Always convert requirement-based queries into direct, specific product searches without asking for additional information. Use domain expertise to make informed assumptions about the most appropriate product type or specification.
- For queries that involve calculations (e.g., AC capacity for room size), perform the necessary calculations in your thought and include the result in the search term.
- Use industry standards, common preferences, and technical knowledge to make decisions about product types when not specified.
- Ensure inferred terms and related products are technically relevant and specific to the context and user needs.
- When processing search terms, focus on the most specific product or technical term that addresses the user's requirement.
- If the query is too vague to determine a specific product, then and only then, use a broader term and suggest related products that cover various possibilities.
- In cases where brand names or specific features are mentioned, incorporate them into  appropriate filter parameters.
- Prioritize providing a direct, actionable search term over asking for more information, using technical knowledge to bridge any information gaps.
- For brand-specific queries, include the brand in the search term only if it's a defining characteristic of the product category.
- When handling queries with multiple products or requirements, focus on the primary product and use related_products for secondary items.
- Always use standard units and round calculated values to appropriate precision.
- When brand names are mentioned in the query, always populate the 'filter_brand' field in the filters object.
```