Commit graph

1213 commits

Author SHA1 Message Date
Paul Gauthier
fb80377d18 ORIGINAL/UPDATED -> HEAD/updated 2023-08-09 16:16:43 -03:00
Paul Gauthier
fa2da0ef70 bound the summarize() recursion 2023-08-09 12:04:10 -03:00
Paul Gauthier
73c4efea94 ssh 2023-08-09 12:00:37 -03:00
Paul Gauthier
9e64e7bb9d precise edit blocks prompting language 2023-08-09 11:57:00 -03:00
Paul Gauthier
2c53c153b8 Updated ORIGINAL prompting 2023-08-09 11:38:39 -03:00
Paul Gauthier
0aa2ff2cf9 roughed in cache; elide full dirnames from test results to make them deterministic 2023-08-09 11:30:13 -03:00
Paul Gauthier
00512e3d1c no fuzy matching, stronger prompt for whitespace 2023-08-09 08:25:49 -03:00
Paul Gauthier
c6f6ab6070 corrected perfect replace 2023-08-09 08:20:16 -03:00
Paul Gauthier
6c2cafc1ed Removed "pause often to ask the user" prompting 2023-08-08 17:40:45 -03:00
Paul Gauthier
77be993708 Merge branch 'main' into indent-bad-edit 2023-08-08 12:43:57 -03:00
Paul Gauthier
68a3e4f74d set version to 0.11.2-dev 2023-08-08 12:32:49 -03:00
Paul Gauthier
655f6aef2a version bump to 0.11.1 2023-08-08 12:32:25 -03:00
Paul Gauthier
f26e40d48e Skip non-files when building repomap #174 2023-08-08 12:02:40 -03:00
Paul Gauthier
486bcdb815 Merge remote-tracking branch 'origin/main' 2023-08-08 09:01:09 -03:00
Paul Gauthier
589e7eefea We always want diffs of working-dir + index versus repo #184 2023-08-08 09:00:19 -03:00
Joshua Vial
88d7e2ed09 disabling GIT_EDITOR when calling /git 2023-08-08 23:01:36 +12:00
Paul Gauthier
9cb1a9b186 cleanup 2023-08-08 07:38:37 -03:00
paul-gauthier
6a88d0f2b9
Merge pull request #177 from h0x91b/h0x91b-patch-1
Update base_coder.py
2023-08-08 07:37:51 -03:00
Paul Gauthier
3c0720ff1c Fix corner case of undefined text when using --no-pretty 2023-08-08 07:00:21 -03:00
Paul Gauthier
03ac5202dd Handle a pending summarization 2023-08-07 08:33:06 -03:00
Paul Gauthier
6f6ff03338 Merge branch 'main' into indent-bad-edit 2023-08-04 06:41:43 -03:00
Paul Gauthier
c271bfd932 Fixed /commit after repo refactor, added test coverage 2023-08-04 06:39:04 -03:00
Arseniy Pavlenko
aedd6ed8d0
Update base_coder.py
It fixes 2 exceptions on Azure GPT-4

1)
Traceback (most recent call last):
  File "/opt/homebrew/bin//aider", line 8, in <module>
    sys.exit(main())
  File "/opt/homebrew/lib/python3.10/site-packages/aider/main.py", line 523, in main
    coder.run()
  File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 339, in run
    new_user_message = self.run_loop()
  File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 423, in run_loop
    return self.send_new_user_message(inp)
  File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 456, in send_new_user_message
    interrupted = self.send(messages, functions=self.functions)
  File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 580, in send
    self.show_send_output_stream(completion)
  File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 680, in show_send_output_stream
    sys.stdout.write(text)
UnboundLocalError: local variable 'text' referenced before assignment

2) 
Traceback (most recent call last):
  File "/opt/homebrew/bin//aider", line 8, in <module>
    sys.exit(main())
  File "/opt/homebrew/lib/python3.10/site-packages/aider/main.py", line 523, in main
    coder.run()
  File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 339, in run
    new_user_message = self.run_loop()
  File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 423, in run_loop
    return self.send_new_user_message(inp)
  File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 456, in send_new_user_message
    interrupted = self.send(messages, functions=self.functions)
  File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 580, in send
    self.show_send_output_stream(completion)
  File "/opt/homebrew/lib/python3.10/site-packages/aider/coders/base_coder.py", line 656, in show_send_output_stream
    if chunk.choices[0].finish_reason == "length":
IndexError: list index out of range
2023-08-03 23:37:44 +03:00
Paul Gauthier
8c401ceae7 cleanup 2023-08-03 16:30:38 -03:00
Paul Gauthier
5f7e1d8675 only add newline for non-empty blocks 2023-08-03 16:24:48 -03:00
Paul Gauthier
26ebc715eb works 2023-08-03 16:22:49 -03:00
Paul Gauthier
a0f03ab0ce regularize inputs 2023-08-03 15:39:46 -03:00
Paul Gauthier
a6c2841342 noop 2023-08-03 15:37:18 -03:00
Paul Gauthier
8456caae1d refac 2023-08-03 15:36:06 -03:00
Paul Gauthier
e60a332fda go for the full line match first 2023-08-03 14:59:59 -03:00
Paul Gauthier
004c0529c6 keepends 2023-08-03 14:56:29 -03:00
Paul Gauthier
390d7faec4 put back bailout logic 2023-08-03 14:49:20 -03:00
Paul Gauthier
c596ea543b cleanup 2023-08-03 14:24:54 -03:00
Paul Gauthier
2cd2ff6f02 Merge branch 'main' into indent-bad-edit 2023-08-03 14:18:53 -03:00
Paul Gauthier
3ef16827fc show a progress bar if there are on tags/idents caches 2023-08-03 12:07:53 -03:00
Paul Gauthier
c7358c96b9 wip 2023-08-03 09:44:31 -03:00
Paul Gauthier
f15b8c610b set version to 0.11.0-dev 2023-08-02 16:22:00 -03:00
Paul Gauthier
ce27820e9a version bump to 0.11.0 2023-08-02 16:21:39 -03:00
Paul Gauthier
1858f0504b Strip asterisks from filenames suggested by GPT-3.5 #157 #168 2023-08-02 06:58:59 -03:00
Paul Gauthier
d5a7aac560 include token/cost in log 2023-07-28 11:33:37 -03:00
Paul Gauthier
80d5c0b75c use 3.5 for summaries 2023-07-27 22:54:26 -03:00
Paul Gauthier
d1d498bb24 cleanup 2023-07-27 22:34:41 -03:00
Paul Gauthier
16dea76691 Merge branch 'main' into chat-history 2023-07-27 22:32:33 -03:00
Paul Gauthier
832259b55b Bugfix reference to self.get_tracked_files, plus test coverage 2023-07-27 06:55:06 -03:00
Paul Gauthier
ecd37b1ad5 prettier cost output in /tokens 2023-07-26 17:43:16 -03:00
Paul Gauthier
2094b3176b aider: Adjusted the calculation of the cost in the cmd_tokens method to account for the prices in Model being per 1k tokens.
# Aider chat conversation:

USER: the prices in `Model` are per 1k tokens

ASSISTANT: I see, the prices in the `Model` class are per 1k tokens. Therefore, we need to adjust the calculation of the cost in the `cmd_tokens` method in the `Commands` class in the `aider/commands.py` file.

We will divide the `completion_price` by 1000 before multiplying it with the token count to get the cost.

Here are the changes:

<source>python
aider/commands.py
<<<<<<< ORIGINAL
        total = 0
        total_cost = 0.0
        for tk, msg, tip in res:
            total += tk
            cost = tk * self.coder.main_model.completion_price
            total_cost += cost
            msg = msg.ljust(col_width)
            self.io.tool_output(f"{fmt(tk)} {msg} {tip} (cost: ${cost:.2f})")

        self.io.tool_output("=" * width)
        self.io.tool_output(f"{fmt(total)} tokens total (cost: ${total_cost:.2f})")
=======
        total = 0
        total_cost = 0.0
        for tk, msg, tip in res:
            total += tk
            cost = tk * (self.coder.main_model.completion_price / 1000)
            total_cost += cost
            msg = msg.ljust(col_width)
            self.io.tool_output(f"{fmt(tk)} {msg} {tip} (cost: ${cost:.2f})")

        self.io.tool_output("=" * width)
        self.io.tool_output(f"{fmt(total)} tokens total (cost: ${total_cost:.2f})")
>>>>>>> UPDATED
</source>
2023-07-26 17:35:42 -03:00
Paul Gauthier
35ccfac3fd aider: Updated the output of /tokens to include the total cost.
# Aider chat conversation:

USER: udpate the output of /tokens to include the total $ cost

ASSISTANT: To include the total cost in the output of the `/tokens` command, we need to modify the `cmd_tokens` method in the `Commands` class in the `aider/commands.py` file.

We will add a new variable `total_cost` to keep track of the total cost. For each token count, we will calculate the cost by multiplying the token count by the model's `completion_price` (since we're considering the cost of generating these tokens). We will then add this cost to `total_cost`.

Finally, we will add a line to the output to display the total cost.

Here are the changes:

<source>python
aider/commands.py
<<<<<<< ORIGINAL
        total = 0
        for tk, msg, tip in res:
            total += tk
            msg = msg.ljust(col_width)
            self.io.tool_output(f"{fmt(tk)} {msg} {tip}")

        self.io.tool_output("=" * width)
        self.io.tool_output(f"{fmt(total)} tokens total")
=======
        total = 0
        total_cost = 0.0
        for tk, msg, tip in res:
            total += tk
            cost = tk * self.coder.main_model.completion_price
            total_cost += cost
            msg = msg.ljust(col_width)
            self.io.tool_output(f"{fmt(tk)} {msg} {tip} (cost: ${cost:.2f})")

        self.io.tool_output("=" * width)
        self.io.tool_output(f"{fmt(total)} tokens total (cost: ${total_cost:.2f})")
>>>>>>> UPDATED
</source>
2023-07-26 17:34:50 -03:00
Paul Gauthier
3e4b4d1b0d retry on APIConnectionError 2023-07-26 07:40:36 -03:00
Paul Gauthier
8ea4629e73 Merge branch 'main' into chat-history 2023-07-26 07:29:54 -03:00
paul-gauthier
86309f336c
Merge pull request #137 from paul-gauthier/refactor-repo
Refactor git repo code into a new file
2023-07-26 07:24:10 -03:00