Skip to content

Commit 05fd674

Browse files
committed
Support raw in OllamaService
1 parent 34a725c commit 05fd674

3 files changed

Lines changed: 8 additions & 0 deletions

File tree

Core/Sources/CodeCompletionService/API/OllamaService.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,7 @@ extension OllamaService {
233233
var options: ChatCompletionRequestBody.Options
234234
var keep_alive: String?
235235
var format: String?
236+
var raw: Bool?
236237
var suffix: String?
237238
}
238239

@@ -248,6 +249,7 @@ extension OllamaService {
248249

249250
func sendPrompt(
250251
_ prompt: String,
252+
raw: Bool? = nil,
251253
suffix: String? = nil
252254
) async throws -> ResponseStream<ChatCompletionResponseChunk> {
253255
let requestBody = CompletionRequestBody(
@@ -261,6 +263,7 @@ extension OllamaService {
261263
),
262264
keep_alive: keepAlive.isEmpty ? nil : keepAlive,
263265
format: format == .none ? nil : format.rawValue,
266+
raw: raw,
264267
suffix: suffix
265268
)
266269

Core/Sources/Fundamental/PromptStrategy.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ public protocol PromptStrategy {
1717
var stopWords: [String] { get }
1818
/// The language of the source code.
1919
var language: CodeLanguage? { get }
20+
/// If the prompt generated is raw.
21+
var promptIsRaw: Bool { get }
2022

2123
/// Creates a prompt about the source code and relevant code snippets to be sent to the AI
2224
/// model.
@@ -92,5 +94,7 @@ public extension PromptStrategy {
9294
guard let prefix = prefix.last else { return .empty }
9395
return .unchanged(prefix)
9496
}
97+
98+
var promptIsRaw: Bool { false }
9599
}
96100

Core/Sources/SuggestionService/RequestStrategies/FillInTheMiddleRequestStrategy.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ struct FillInTheMiddleRequestStrategy: RequestStrategy {
4242
var relevantCodeSnippets: [RelevantCodeSnippet] { sourceRequest.relevantCodeSnippets }
4343
var stopWords: [String] { ["\n\n", Tag.stop].filter { !$0.isEmpty } }
4444
var language: CodeLanguage? { sourceRequest.language }
45+
var promptIsRaw: Bool { true }
4546

4647
var suggestionPrefix: SuggestionPrefix {
4748
guard let prefix = prefix.last else { return .empty }

0 commit comments

Comments
 (0)