mirror of
https://github.com/zed-industries/zed.git
synced 2025-01-12 05:15:00 +00:00
Revert summarizing file content until we can be more intelligent about what we send
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
This commit is contained in:
parent
66af1707a1
commit
5cf92980f0
2 changed files with 23 additions and 8 deletions
|
@ -578,10 +578,7 @@ impl AssistantPanel {
|
||||||
|
|
||||||
let codegen_kind = codegen.read(cx).kind().clone();
|
let codegen_kind = codegen.read(cx).kind().clone();
|
||||||
let user_prompt = user_prompt.to_string();
|
let user_prompt = user_prompt.to_string();
|
||||||
let prompt = cx.background().spawn(async move {
|
|
||||||
let language_name = language_name.as_deref();
|
|
||||||
generate_content_prompt(user_prompt, language_name, &buffer, range, codegen_kind)
|
|
||||||
});
|
|
||||||
let mut messages = Vec::new();
|
let mut messages = Vec::new();
|
||||||
let mut model = settings::get::<AssistantSettings>(cx)
|
let mut model = settings::get::<AssistantSettings>(cx)
|
||||||
.default_open_ai_model
|
.default_open_ai_model
|
||||||
|
@ -597,6 +594,11 @@ impl AssistantPanel {
|
||||||
model = conversation.model.clone();
|
model = conversation.model.clone();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let prompt = cx.background().spawn(async move {
|
||||||
|
let language_name = language_name.as_deref();
|
||||||
|
generate_content_prompt(user_prompt, language_name, &buffer, range, codegen_kind)
|
||||||
|
});
|
||||||
|
|
||||||
cx.spawn(|_, mut cx| async move {
|
cx.spawn(|_, mut cx| async move {
|
||||||
let prompt = prompt.await;
|
let prompt = prompt.await;
|
||||||
|
|
||||||
|
|
|
@ -121,6 +121,7 @@ pub fn generate_content_prompt(
|
||||||
range: Range<impl ToOffset>,
|
range: Range<impl ToOffset>,
|
||||||
kind: CodegenKind,
|
kind: CodegenKind,
|
||||||
) -> String {
|
) -> String {
|
||||||
|
let range = range.to_offset(buffer);
|
||||||
let mut prompt = String::new();
|
let mut prompt = String::new();
|
||||||
|
|
||||||
// General Preamble
|
// General Preamble
|
||||||
|
@ -130,17 +131,29 @@ pub fn generate_content_prompt(
|
||||||
writeln!(prompt, "You're an expert engineer.\n").unwrap();
|
writeln!(prompt, "You're an expert engineer.\n").unwrap();
|
||||||
}
|
}
|
||||||
|
|
||||||
let outline = summarize(buffer, range);
|
let mut content = String::new();
|
||||||
|
content.extend(buffer.text_for_range(0..range.start));
|
||||||
|
if range.start == range.end {
|
||||||
|
content.push_str("<|START|>");
|
||||||
|
} else {
|
||||||
|
content.push_str("<|START|");
|
||||||
|
}
|
||||||
|
content.extend(buffer.text_for_range(range.clone()));
|
||||||
|
if range.start != range.end {
|
||||||
|
content.push_str("|END|>");
|
||||||
|
}
|
||||||
|
content.extend(buffer.text_for_range(range.end..buffer.len()));
|
||||||
|
|
||||||
writeln!(
|
writeln!(
|
||||||
prompt,
|
prompt,
|
||||||
"The file you are currently working on has the following outline:"
|
"The file you are currently working on has the following content:"
|
||||||
)
|
)
|
||||||
.unwrap();
|
.unwrap();
|
||||||
if let Some(language_name) = language_name {
|
if let Some(language_name) = language_name {
|
||||||
let language_name = language_name.to_lowercase();
|
let language_name = language_name.to_lowercase();
|
||||||
writeln!(prompt, "```{language_name}\n{outline}\n```").unwrap();
|
writeln!(prompt, "```{language_name}\n{content}\n```").unwrap();
|
||||||
} else {
|
} else {
|
||||||
writeln!(prompt, "```\n{outline}\n```").unwrap();
|
writeln!(prompt, "```\n{content}\n```").unwrap();
|
||||||
}
|
}
|
||||||
|
|
||||||
match kind {
|
match kind {
|
||||||
|
|
Loading…
Reference in a new issue