# Copyright 2025 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """Gemini simulation module to match the original cache key signatures.""" from cache_manager import intake_cache as cache from llm_client import gemma_roleplay @cache.memoize() def gemini_get_text_response( prompt: str, stop_sequences: list = None, temperature: float = 0.1, max_output_tokens: int = 4000, top_p: float = 0.8, top_k: int = 10, ): """Checks cache first via memoization. On cache miss, calls Gemma roleplay.""" messages = [{"role": "user", "content": prompt}] return gemma_roleplay.chat_completion( messages=messages, temperature=temperature, max_tokens=max_output_tokens, stream=False, )