logdetective 2.4.0__tar.gz → 2.4.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. {logdetective-2.4.0 → logdetective-2.4.1}/PKG-INFO +1 -1
  2. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/config.py +3 -2
  3. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/models.py +2 -0
  4. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/templates/gitlab_full_comment.md.j2 +8 -6
  5. {logdetective-2.4.0 → logdetective-2.4.1}/pyproject.toml +1 -1
  6. {logdetective-2.4.0 → logdetective-2.4.1}/LICENSE +0 -0
  7. {logdetective-2.4.0 → logdetective-2.4.1}/README.md +0 -0
  8. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/__init__.py +0 -0
  9. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/constants.py +0 -0
  10. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/drain3.ini +0 -0
  11. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/extractors.py +0 -0
  12. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/logdetective.py +0 -0
  13. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/models.py +0 -0
  14. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/prompts-summary-first.yml +0 -0
  15. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/prompts-summary-only.yml +0 -0
  16. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/prompts.yml +0 -0
  17. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/remote_log.py +0 -0
  18. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/__init__.py +0 -0
  19. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/compressors.py +0 -0
  20. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/database/__init__.py +0 -0
  21. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/database/base.py +0 -0
  22. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/database/models/__init__.py +0 -0
  23. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/database/models/exceptions.py +0 -0
  24. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/database/models/koji.py +0 -0
  25. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/database/models/merge_request_jobs.py +0 -0
  26. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/database/models/metrics.py +0 -0
  27. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/emoji.py +0 -0
  28. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/exceptions.py +0 -0
  29. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/gitlab.py +0 -0
  30. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/koji.py +0 -0
  31. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/llm.py +0 -0
  32. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/metric.py +0 -0
  33. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/plot.py +0 -0
  34. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/server.py +0 -0
  35. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/templates/base_response.html.j2 +0 -0
  36. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/templates/gitlab_short_comment.md.j2 +0 -0
  37. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/server/utils.py +0 -0
  38. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/skip_snippets.yml +0 -0
  39. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective/utils.py +0 -0
  40. {logdetective-2.4.0 → logdetective-2.4.1}/logdetective.1.asciidoc +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: logdetective
3
- Version: 2.4.0
3
+ Version: 2.4.1
4
4
  Summary: Log using LLM AI to search for build/test failures and provide ideas for fixing these.
5
5
  License: Apache-2.0
6
6
  License-File: LICENSE
@@ -52,10 +52,11 @@ def get_log(config: Config):
52
52
  return log
53
53
 
54
54
 
55
- def get_openai_api_client(ineference_config: InferenceConfig):
55
+ def get_openai_api_client(inference_config: InferenceConfig):
56
56
  """Set up AsyncOpenAI client with default configuration."""
57
57
  return AsyncOpenAI(
58
- api_key=ineference_config.api_token, base_url=ineference_config.url
58
+ api_key=inference_config.api_token, base_url=inference_config.url,
59
+ timeout=inference_config.llm_api_timeout
59
60
  )
60
61
 
61
62
 
@@ -182,6 +182,7 @@ class InferenceConfig(BaseModel): # pylint: disable=too-many-instance-attribute
182
182
  http_timeout: float = 5.0
183
183
  user_role: str = USER_ROLE_DEFAULT
184
184
  system_role: str = SYSTEM_ROLE_DEFAULT
185
+ llm_api_timeout: float = 15.0
185
186
  _http_session: aiohttp.ClientSession = None
186
187
  _limiter: AsyncLimiter = AsyncLimiter(LLM_DEFAULT_REQUESTS_PER_MINUTE)
187
188
 
@@ -203,6 +204,7 @@ class InferenceConfig(BaseModel): # pylint: disable=too-many-instance-attribute
203
204
  self._requests_per_minute = data.get(
204
205
  "requests_per_minute", LLM_DEFAULT_REQUESTS_PER_MINUTE
205
206
  )
207
+ self.llm_api_timeout = data.get("llm_api_timeout", 15.0)
206
208
  self._limiter = AsyncLimiter(self._requests_per_minute)
207
209
 
208
210
  def __del__(self):
@@ -3,14 +3,16 @@ Please know that the explanation was provided by AI and may be incorrect.
3
3
  {% if certainty > 0 %}
4
4
  In this case, we are {{ "%.2f" | format(certainty) }}% certain of the response {{ emoji_face }}.
5
5
  {% endif %}
6
+
6
7
  <b>Snippets:</b>
8
+
7
9
  <ul>
8
- {% for snippet in snippets %}
9
- <li>
10
- <b>Line {{ snippet.line_number }}:</b> <code>{{ snippet.text }}</code>
11
- {{ snippet.explanation.text }}
12
- </li>
13
- {% endfor %}
10
+ {% for snippet in snippets %}
11
+ <li>
12
+ <b>Line {{ snippet.line_number }}:</b> <code>{{ snippet.text }}</code>
13
+ {{ snippet.explanation.text }}
14
+ </li>
15
+ {% endfor %}
14
16
  </ul>
15
17
  <details>
16
18
  <summary>Description</summary>
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "logdetective"
3
- version = "2.4.0"
3
+ version = "2.4.1"
4
4
  description = "Log using LLM AI to search for build/test failures and provide ideas for fixing these."
5
5
  authors = ["Jiri Podivin <jpodivin@gmail.com>"]
6
6
  license = "Apache-2.0"
File without changes
File without changes