Marshall Bowers
4939d23bd3
Enable clippy::derive_ord_xor_partial_ord
( #9371 )
...
This PR enables the
[`clippy::derive_ord_xor_partial_ord`](https://rust-lang.github.io/rust-clippy/master/index.html#/derive_ord_xor_partial_ord )
rule and fixes the outstanding violations.
Release Notes:
- N/A
2024-03-14 17:55:57 -04:00
Marshall Bowers
12980dd88f
Enable clippy::derivable_impls
( #8836 )
...
This PR enables the
[`clippy::derivable_impls`](https://rust-lang.github.io/rust-clippy/master/index.html#/derivable_impls )
rule and fixes the outstanding violations.
Release Notes:
- N/A
2024-03-04 11:47:07 -05:00
Marshall Bowers
373e18bc88
Enable clippy::unnecessary_unwrap
( #8756 )
...
This PR enables the
[`clippy::unnecessary_unwrap`](https://rust-lang.github.io/rust-clippy/master/index.html#/unnecessary_unwrap )
rule and fixes the outstanding violations.
Release Notes:
- N/A
2024-03-02 23:10:56 -05:00
Marshall Bowers
9735912965
Enable clippy::clone_on_copy
( #8728 )
...
This PR enables the
[`clippy::clone_on_copy`](https://rust-lang.github.io/rust-clippy/master/index.html#/clone_on_copy )
rule and fixes the outstanding violations.
Release Notes:
- N/A
2024-03-02 17:37:48 -05:00
Marshall Bowers
4b81b15cad
Enable clippy::useless_conversion
( #8724 )
...
This PR enables the
[`clippy::useless_conversion`](https://rust-lang.github.io/rust-clippy/master/index.html#/useless_conversion )
rule and fixes the outstanding violations.
Release Notes:
- N/A
2024-03-02 16:31:47 -05:00
Marshall Bowers
87efb75e53
Enable clippy::bind_instead_of_map
( #8723 )
...
This PR enables the
[`clippy::bind_instead_of_map`](https://rust-lang.github.io/rust-clippy/master/index.html#/bind_instead_of_map )
rule and fixes the outstanding violations.
Release Notes:
- N/A
2024-03-02 16:10:34 -05:00
Marshall Bowers
ca2cda8d2a
Remove unneeded 'static
lifetimes on &str
s in constants ( #8698 )
...
This PR removes unneeded `'static` lifetimes on `&str`s stored in
`const` declarations.
This addresses some Clippy lints about
[`redundant_static_lifetimes`](https://rust-lang.github.io/rust-clippy/master/index.html#/redundant_static_lifetimes ).
In item-level `const` declarations we can rely on lifetime elision and
use the default `'static` lifetime.
Note that associated constants still require an explicit `'static`
lifetime, as explained in
https://github.com/rust-lang/rust/issues/115010 .
Release Notes:
- N/A
2024-03-02 00:40:49 -05:00
Marshall Bowers
0d0ce95eae
Replace lazy_static!
with OnceLock
in ai
crate ( #8647 )
...
This PR replaces a `lazy_static!` usage in the `ai` crate with
`OnceLock` from the standard library.
This allows us to drop the `lazy_static` dependency from this crate.
Release Notes:
- N/A
2024-02-29 23:37:20 -05:00
Marshall Bowers
eb1ab69606
Wire up Azure OpenAI completion provider ( #8646 )
...
This PR wires up support for [Azure
OpenAI](https://learn.microsoft.com/en-us/azure/ai-services/openai/overview )
as an alternative AI provider in the assistant panel.
This can be configured using the following in the settings file:
```json
{
"assistant": {
"provider": {
"type": "azure_openai",
"api_url": "https://{your-resource-name}.openai.azure.com ",
"deployment_id": "gpt-4",
"api_version": "2023-05-15"
}
},
}
```
You will need to deploy a model within Azure and update the settings
accordingly.
Release Notes:
- N/A
2024-02-29 22:01:33 -05:00
Marshall Bowers
dab886f479
Stub out support for Azure OpenAI ( #8624 )
...
This PR stubs out support for [Azure
OpenAI](https://learn.microsoft.com/en-us/azure/ai-services/openai/overview )
within the `OpenAiCompletionProvider`.
It still requires some additional wiring so that it is accessible, but
the necessary hooks should be in place now.
Release Notes:
- N/A
2024-02-29 13:02:08 -05:00
Yesterday17
9e17018416
Allow OpenAI API URL to be configured via assistant.openai_api_url
( #7552 )
...
Partially fixes #4321 , since Azure OpenAI API can be converted to OpenAI
API.
Release Notes:
- Added `assistant.openai_api_url` setting to allow OpenAI API URL to be
configured.
---------
Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
2024-02-12 11:37:27 -05:00
Todsaporn Banjerdkit
2aa8ccd6b1
fix: use OPEN_AI_API_URL ( #7484 )
...
Release Notes:
- N/A
2024-02-07 10:13:52 +01:00
Todsaporn Banjerdkit
1ab49fdbe6
Use fallback BPE if the language model doesn't have one ( #6848 )
...
Release Notes:
- Added a fallback BPE if the language model doesn't have one.
---------
Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
2024-01-29 22:42:03 -05:00
Marshall Bowers
027f055841
Update casing of "OpenAI" in identifiers to match Rust conventions ( #6940 )
...
This PR updates the casing of "OpenAI" when used in Rust identifiers to
match the [Rust naming
guidelines](https://rust-lang.github.io/api-guidelines/naming.html ):
> In `UpperCamelCase`, acronyms and contractions of compound words count
as one word: use `Uuid` rather than `UUID`, `Usize` rather than `USize`
or `Stdin` rather than `StdIn`.
Release Notes:
- N/A
2024-01-28 12:01:10 -05:00
Antonio Scandurra
25a7eb27d2
Move interaction with keychain off the main thread
2024-01-24 14:53:05 +01:00
Antonio Scandurra
22046ef9a7
Load language models in the background
2024-01-24 13:36:44 +01:00
Piotr Osiewicz
6c82380232
chore: Fix clippy::needless_borrow up to an editor
2024-01-21 15:03:24 +01:00
Mikayla
57400e9687
Fix typos detected by crate-ci/typos
2024-01-17 14:31:21 -08:00
Piotr Osiewicz
d475f1373a
gpui: Further docs refinement & moved some reexports into 'private' module ( #3935 )
...
This commit mostly fixes invalid URLs in docstrings. It also
encapsulates crates we reexport (serde stuff + linkme) into a public
module named "private" in order to reduce the API surfaced through docs.
Moreover, I fixed up a bunch of crates that were pulling serde_json in
through gpui explicitly instead of using Cargo manifest.
Release Notes:
- N/A
2024-01-07 14:14:21 +01:00
Max Brunsfeld
4ddb26204f
Remove 2 suffix for ai, zed_actions, install_ci, feature_flags
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2024-01-03 11:48:46 -08:00
KCaverly
d5b6300fd7
moved from Boxes to Arcs for shared access of completion providers across the assistant panel and inline assistant
2023-11-02 10:08:47 -04:00
KCaverly
f3c113fe02
clean up warnings and fix tests in the ai crate
2023-10-30 11:07:24 -04:00
KCaverly
a2c3971ad6
moved authentication for the semantic index into the EmbeddingProvider
2023-10-30 10:02:27 -04:00
KCaverly
1e8b23d8fb
replace api_key with ProviderCredential throughout the AssistantPanel
2023-10-28 18:16:45 -04:00
KCaverly
558f54c424
added credential provider to completion provider
2023-10-28 16:35:43 -04:00
KCaverly
7af77b1cf9
moved TestCompletionProvider into ai
2023-10-27 12:26:01 +02:00
KCaverly
ec9d79b6fe
add concept of LanguageModel to CompletionProvider
2023-10-27 08:51:30 +02:00
KCaverly
6c8bb4b05e
ensure OpenAIEmbeddingProvider is using the provider credentials
2023-10-27 08:33:35 +02:00
KCaverly
ca82ec8e8e
fixed truncation error in fake language model
2023-10-26 14:05:55 +02:00
KCaverly
3447a9478c
updated authentication for embedding provider
2023-10-26 11:18:16 +02:00
KCaverly
71bc35d241
catchup with main
2023-10-25 16:31:00 +02:00
KCaverly
8ffe5a3ec7
move keychain access into semantic index as opposed to on init
2023-10-24 13:26:37 +02:00
KCaverly
0dfbfdd164
catchup with main
2023-10-23 17:21:37 +02:00
KCaverly
4e90e45999
move embedding truncation to base model
2023-10-23 14:07:45 +02:00
KCaverly
2b780ee7b2
add base model to EmbeddingProvider, not yet leveraged for truncation
2023-10-22 15:00:09 +02:00
KCaverly
d1dec8314a
move OpenAIEmbeddings to OpenAIEmbeddingProvider in providers folder
2023-10-22 14:46:22 +02:00
KCaverly
d813ae8845
replace OpenAIRequest with more generalized Box<dyn CompletionRequest>
2023-10-22 14:33:19 +02:00
KCaverly
05ae978cb7
move OpenAICompletionProvider to providers location
2023-10-22 13:57:13 +02:00
KCaverly
3712794e56
move OpenAILanguageModel to providers folder
2023-10-22 13:47:28 +02:00
KCaverly
a62baf34f2
rename templates to prompts in ai crate
2023-10-22 13:46:49 +02:00
KCaverly
0b57ab7303
cleaned up truncate vs truncate start
2023-10-22 13:34:22 +02:00
KCaverly
106115676d
update semantic search to use keychain as fallback
2023-10-21 10:19:50 -04:00
KCaverly
71fb23f769
decrease temperature for inline assist on code content
2023-10-19 15:44:49 -04:00
KCaverly
19c2df4822
outlined when truncation is taking place in the prompt
2023-10-19 14:33:52 -04:00
KCaverly
178a84bcf6
progress on smarter truncation strategy for file context
2023-10-18 17:56:59 -04:00
KCaverly
587fd707ba
added smarter error handling for file_context prompts without provided buffers
2023-10-18 16:40:09 -04:00
KCaverly
f59f2eccd5
added dumb truncation strategies to file_context and generate
2023-10-18 16:32:14 -04:00
KCaverly
a0e01e075d
fix for error when truncating a length less than the string length
2023-10-18 16:31:29 -04:00
KCaverly
32853c2044
added initial placeholder for truncation without a valid strategy
2023-10-18 16:23:53 -04:00
KCaverly
473067db31
update PromptPriority to accomodate for both Mandatory and Ordered prompts
2023-10-18 15:56:39 -04:00